用于从文件中删除数据的批处理文件

时间:2016-05-03 13:02:29

标签: string batch-file file-manipulation

我想在条目[TEST]

之后删除文件中的所有数据

E.g。

文本文件是:

  

随机文字1

     

随机文字2

     

随机文字3

     

[TEST] Random Text 4

     

随机文本5

     

随机文字6 ....

运行批处理文件后,我只想删除字符串[TEST]后的所有数据,这样新文件将如下所示:

  

随机文字1

     

随机文字2

     

随机文字3

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

@echo off

set file_to_process=#

for /f "skip=2 tokens=1 delims=[]" %%# in  ('find /i /n "[test]" "%file_to_process%"') do (
    set line=%%#
    goto :break_for
)
:break_for
echo %line%

break>"%temp%\empty"&&fc "%temp%\empty" "%file_to_process%" /lb  %line% /t |more +4 | findstr /B /E /V "*****" > temp

rem move temp "%file_to_process%"

设置要在第二行处理的文件的路径。如果temp文件中的内容正常,则可以取消注释最后一行。