楼 主
请问如何删除特定行的文件?
发表于 2010-12-21 16:12 · 中国 上海 电信
新手上路
★
积分 8
发帖 3
注册 2010-06-15 20:46
16年会员
UID 168895
性别 男
状态 离线
检查指定文件夹,如果发现里面的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))
第 2 楼
发表于 2010-12-22 16:16 · 中国 上海 电信
新手上路
★
积分 8
发帖 3
注册 2010-06-15 20:46
16年会员
UID 168895
性别 男
状态 离线
第 3 楼
发表于 2010-12-22 17:22 · 中国 上海 电信
新手上路
★
积分 8
发帖 3
注册 2010-06-15 20:46
16年会员
UID 168895
性别 男
状态 离线
是不是我的问题太简单了还是没说明白?
假设一个目录里面有很多TXT文件:
文件A:
123
456
123456
文件B:
123
888
88456
如果给个特定字符串456, 那文件A就应该被删除,因为第二行正好就是456. 而文件B就不用删除,因为456只是它第3行的部分。
有谁可以帮忙一下吗?或者给个提示,我这方面很菜。。。
第 4 楼
发表于 2010-12-24 00:04 · 中国 上海 杨浦区 电信
管理员
★★
积分 389
发帖 198
注册 2008-09-23 12:00
17年会员
UID 126405
性别 男
状态 离线
第 5 楼
发表于 2010-12-26 16:14 · 中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
如果你用的是DOS系统,它的for命令是不支持/f的。
第 6 楼
发表于 2010-12-26 21:55 · 中国 上海 杨浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
确切的说,是 DOS 自带的 COMMAND 的 FOR 命令不支持 /f 参数。如果用 4DOS 做命令解释器是支持的。
论坛跳转: