楼 主
[求助]关于文件分割与合并
发表于 2010-01-18 00:07 · 中国 四川 泸州 联通
高级用户
★★★
积分 609 发帖 374 注册 2006-08-02 22:38 20年会员 UID 59720
状态 离线
有文件a.txt,文件中有很多很多行.
要求每16行合并为1行,输出到b.txt
谢谢先
[ Last edited by ZJHJ on 2010-1-18 at 08:48 ]
第 2 楼
发表于 2010-01-18 12:38 · 中国 重庆 沙坪坝区 电信
版主
★★★★★
积分 9,023 发帖 5,017 注册 2007-05-31 19:39 19年会员 UID 89899 性别 男
状态 离线
gawk "{if(NR%16!=0)ORS=\" \";else ORS=\"\n\";print $0}" a.txt >b.txt
第 3 楼
发表于 2010-01-18 13:26 · 中国 北京 中电华通通信有限公司
高级用户
★★★
据说是李先生
积分 609 发帖 400 注册 2008-04-23 15:55 18年会员 UID 116706 性别 男
状态 离线
如果要剔除空行的话,还是用CMD的变量好。
┏━━━━━━┓
┃据说是李先生┃
┠──────┨
┃*ntRSS┃
┗━━━━━━┛
第 4 楼
发表于 2010-01-18 16:07 · 中国 四川 广元 联通
高级用户
★★★
积分 609 发帖 374 注册 2006-08-02 22:38 20年会员 UID 59720
状态 离线
Originally posted by HAT at 2010-1-18 12:38:
gawk "{if(NR%16!=0)ORS=\" \";else ORS=\"\n\";print $0}" a.txt >b.txt
谢谢HAT版主,gawk是第三工具吗?
第 5 楼
发表于 2010-01-18 23:00 · 美国 惠普HP
版主
★★★★★
积分 9,023 发帖 5,017 注册 2007-05-31 19:39 19年会员 UID 89899 性别 男
状态 离线
第 6 楼
发表于 2010-01-25 16:34 · 中国 北京 朝阳区 电信
新手上路
★
积分 1 发帖 1 注册 2010-01-22 15:50 16年会员 UID 159250 性别 女
状态 离线
@echo off
set num=0
setlocal ENABLEDELAYEDEXPANSION
for /f "delims=" %%i in (a.txt) do (
set /a num+=1
set str=!str! %%i
if !num! equ 16 echo !str! >>b.txt&& set num=0 & set str=
)
if not "%str%"=="" echo %str%
pause
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正