过期罐头电脑论坛-win7、win10雨人系统下载

过期罐头电脑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3476|回复: 0
收起左侧

[编程开发] 批量删除任意文本文件空行或前几行的批处理程序

[复制链接]
发表于 2013-6-26 15:14:49 | 显示全部楼层 |阅读模式
发贴请勿包含网站外链(直接下载地址和网盘除外),屡犯者将封禁ID、网址永久屏蔽,www.gqgtpc.com感谢支持!
在计算的时候经常需要将output文件中的一些无用头部信息删掉,以便从中提取数据进行下一步计算。如果*.txt, *.log 或*.out之类的文件很多,要一个个打开删除之必然很费时费力。这是可通过编写BAT批处理文件实现批量删除文本文件或任意文件的前几行内容。

将以下代码复制到记事本或ultraedit中,另存为*.bat 批处理程序文件后双击运行之即可:
  1. <font face="新宋体">[url=home.php?mod=space&uid=18493]@Echo[/url] OFF
  2. SET TxtDir="d:\folder"
  3. SET /A N=2
  4. ECHO 删除行操作开始...
  5. CD /D %TxtDir%
  6. FOR /F "tokens=1 delims=" %%I IN ('DIR /A /B *.txt') DO ((MORE +%N% "%%I">"%%I_")&(DEL /A /F /Q "%%I")&(REN "%%I_" "%%I"))
  7. ECHO 恭喜,执行任务结束。
  8. PAUSE</font>
复制代码


上述代码中,根据情况不同需要修改三处地方:第二行“TxtDir="d:\folder"”部分表示文本文件所在的路径,在第三行中的“/A N=2”中可设置需要删除的前N行的数目,第六行中的“*.txt”表示需要读取的文本文件的扩展名,可支持任意扩展名。

如果需要删除任意文本文件中的空行,则可将下面的代码做出bat批处理文件后运行即可:
  1. <font face="新宋体">@echo off
  2. for %%a in (*.txt) do (
  3. for /f "tokens=*" %%b in ('type "%%a"') do echo %%b>>"1%%a"
  4. del "%%a"
  5. ren "1%%a" "%%a"
  6. )</font>
复制代码

当然,还有一些第三方工具,比如在线编辑器Sed、中文编辑排版专家DreamEdit 亦可实现,但远不如批处理文件来得轻便。

楼主热帖
[Windows7] Windows7 下使用无线网卡共享上网的4种方式
[Windows10] Win8.1切换到Microsoft账户提示0xd00000bb错
[Windows7] 12条适用 的 Windows7小技巧总结搜集
[Windows7] Windows 7操作系统如何解决ip地址抵触 ?
[Windows10] 假如 集成显卡打败了独立显卡,不,不是假如
[Windows xp] Windows XP系统下桌面图标的间距大小怎么调
[Windows7] 让你的WIN7更像XP_关闭显示特效WIN7和XP没两
[系统应用经验技巧] 把“复制到文件夹”和“移动到文件夹
[Windows7] 关闭win7“设置备份”的提示
[Windows7] 解决windows 7双网卡接内外网出现抵触 的方法

您需要登录后才可以回帖 登录 | 注册

本版积分规则

win7 64位旗舰版下载|win10系统下载|win7旗舰版|联系我们|网站地图|过期罐头电脑论坛

GMT+8, 2017-11-22 10:29 , Processed in 0.155698 second(s), 24 queries .

官方免责声明:本站内容来自网友和互联网.若侵犯到您的版权.请致信联系,我们将第一时间删除相关内容!

Powered by Discuz!

过期罐头电脑论坛

win7旗舰版_windows10

快速回复 返回顶部 返回列表