如何使用批处理文件删除一堆文本文件中的一行文本?

时间:2013-10-17 10:53:35

标签: windows batch-file cmd text-files

我的D驱动器中有一堆txt文件,这些文件随机放置在不同的位置。某些文件还包含符号。我想要一个批处理文件,以便我可以同时完全删除它们的特定行,而不是逐个为每个文件执行它们,请参考一个代码,该代码不会在其他位置创建新的文本文件,并且包含更改即我不想输入input.txt和output.txt。我只需要在单击批处理文件后立即将原始文件替换为更改。

e.g d:\ ABC \ 1.TXT D:\ xyz \ 2.txt等

我希望只需单击即可完全删除它们的第3行,并且新文件必须在同一位置保存相同的名称,即新更改的文本文件必须替换旧文本文件并删除其各自的行。也许是某种* .txt的东西,即我应该能够通过单个批处理文件在驱动器中更改所有带有.txt扩展名的文件,可能在另一个驱动器中,而不是将我的批处理文件分别放入每个文件夹然后运行他们。另外,欢迎使用vbs文件。

1 个答案:

答案 0 :(得分:3)

这使用了来自 - http://www.dostips.com/forum/viewtopic.php?f=3&t=4697

的名为findrepl.bat的帮助程序批处理文件

findrepl.bat放在与下面批处理文件相同的文件夹中。

它将搜索驱动器d:上的每个* .txt文件,并删除第3行。

@echo off
for /r "d:\" %%a in (*.txt) do (
   echo processing "%%a"
   type "%%a"|findrepl /v /o:3:3 >"%%a.tmp"
   move "%%a.tmp" "%%a" >nul
)
pause
相关问题