Board logo

标题: 请问如何删除特定行的文件? [打印本页]

作者: aceonly     时间: 2010-12-21 16:12    标题: 请问如何删除特定行的文件?
检查指定文件夹,如果发现里面的TXT文件的某一行为HHHHHHH的,就立马删除这个文件。 如果HHHHHHH出现在其他行里面的话,那就可以忽略的。下面的代码好像不能解决我的问题啊,哪位肯帮忙看一下? 谢谢 set old=d:\test set SRT1=HHHHHHH for /f "delims=" %%c in ('dir /b /s /a-d "%old%\*.txt"') do ( for /f "delims=" %%d in (%%c) do ( if *%%d*==*%STR1%* del %%c))

作者: aceonly     时间: 2010-12-22 16:16
有人帮忙看一下吗?谢谢了

作者: aceonly     时间: 2010-12-22 17:22
是不是我的问题太简单了还是没说明白? 假设一个目录里面有很多TXT文件: 文件A: 123 456 123456 文件B: 123 888 88456 如果给个特定字符串456, 那文件A就应该被删除,因为第二行正好就是456. 而文件B就不用删除,因为456只是它第3行的部分。 有谁可以帮忙一下吗?或者给个提示,我这方面很菜。。。

作者: DOSroot     时间: 2010-12-24 00:04
看看你有没有发错地方: www.cn-dos.net/forum/viewthrea ...

作者: HAT     时间: 2010-12-26 16:14
如果你用的是DOS系统,它的for命令是不支持/f的。

作者: DOSforever     时间: 2010-12-26 21:55
确切的说,是 DOS 自带的 COMMAND 的 FOR 命令不支持 /f 参数。如果用 4DOS 做命令解释器是支持的。