|
在计算的时候经常需要将output文件中的一些无用头部信息删掉,以便从中提取数据进行下一步计算。如果*.txt, *.log 或*.out之类的文件很多,要一个个打开删除之必然很费时费力。这是可通过编写BAT批处理文件实现批量删除文本文件或任意文件的前几行内容。
将以下代码复制到记事本或ultraedit中,另存为*.bat 批处理程序文件后双击运行之即可:
- <font face="新宋体">[url=home.php?mod=space&uid=18493]@Echo[/url] OFF
- SET TxtDir="d:\folder"
- SET /A N=2
- ECHO 删除行操作开始...
- CD /D %TxtDir%
- FOR /F "tokens=1 delims=" %%I IN ('DIR /A /B *.txt') DO ((MORE +%N% "%%I">"%%I_")&(DEL /A /F /Q "%%I")&(REN "%%I_" "%%I"))
- ECHO 恭喜,执行任务结束。
- PAUSE</font>
复制代码
上述代码中,根据情况不同需要修改三处地方:第二行“TxtDir="d:\folder"”部分表示文本文件所在的路径,在第三行中的“/A N=2”中可设置需要删除的前N行的数目,第六行中的“*.txt”表示需要读取的文本文件的扩展名,可支持任意扩展名。
如果需要删除任意文本文件中的空行,则可将下面的代码做出bat批处理文件后运行即可:
- <font face="新宋体">@echo off
- for %%a in (*.txt) do (
- for /f "tokens=*" %%b in ('type "%%a"') do echo %%b>>"1%%a"
- del "%%a"
- ren "1%%a" "%%a"
- )</font>
复制代码
当然,还有一些第三方工具,比如在线编辑器Sed、中文编辑排版专家DreamEdit 亦可实现,但远不如批处理文件来得轻便。 |
|
|
|
|
|
|