中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-11 18:55
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » 在路径中能不能用正则表达式
可打印版本  1,996 / 16
第1楼 aobu129 发表于 2009-04-22 12:02
新手上路 发帖 11 积分 15
在路径中能不能用正则表达式
我想编一个批处理文件 自动删除一些文件
但是 整个路径中有一组不确定的数字文件夹 比c:\aaa\bbb\2008\files\*.*
那个2008可能是别的4位数字 1008 3008 我不知道怎么才能用正则表达式把这四位数表示到路径中 dos下
谢谢
第2楼 yishanju 发表于 2009-04-22 14:04
银牌会员 发帖 1,357 积分 1,488
用FINDSTR
第3楼 aobu129 发表于 2009-04-23 02:28
新手上路 发帖 11 积分 15
楼上的兄弟 你那只是 能在文本里找啊
我试过了 在批处理的 文件夹路径里面 正则表达式 没有用的
它把哪个表达式认为一个字符串
第4楼 yishanju 发表于 2009-04-23 03:17
银牌会员 发帖 1,357 积分 1,488
你敢说清楚你想要做什么么
第5楼 aobu129 发表于 2009-04-23 05:25
新手上路 发帖 11 积分 15
哦 对不起 没有解释清楚
我的意思是 比如说QQ 吧 qq的目录里面不是有很多qq账号相关的文件夹吗 ??
我要做一个批处理把 每个QQ 号码里面的文件传输目录给删除了
这下清楚了吧
谢谢
第6楼 freeants001 发表于 2009-04-23 05:53
中级用户 发帖 244 积分 330 来自 湖北
试试

@echo off
for /f "delims=" %%i in ('dir/a/s/b c:\aaa\bbb\^|findstr \\\\') do @echo %%i
pause


如果显示的你要删除的文件,自已修稍作修改就可以了.

[ Last edited by freeants001 on 2009-4-24 at 07:45 ]
第7楼 aobu129 发表于 2009-04-23 06:08
新手上路 发帖 11 积分 15
不行哦 哥们儿
执行后说

文件名、目录名或卷标语法不正确。
文件名、目录名或卷标语法不正确。
文件名、目录名或卷标语法不正确。
文件名、目录名或卷标语法不正确。
文件名、目录名或卷标语法不正确。
第8楼 yishanju 发表于 2009-04-23 10:56
银牌会员 发帖 1,357 积分 1,488
@echo off
for /f "delims=" %%i in ('dir/a/s/b "D:\Program Files\cmqq\"^|findstr -ric:"D:\\Program Files\\cmqq\\*"') do (
echo %%i
)

pause

[ Last edited by yishanju on 2009-4-23 at 11:07 ]
第9楼 netbenton 发表于 2009-04-23 11:01
银牌会员 发帖 752 积分 1,916 来自 广西
@echo%%i
连在一起了,改为:@echo %%i
第10楼 aobu129 发表于 2009-04-23 22:36
新手上路 发帖 11 积分 15
谢谢 大家了 真热心啊
但是 我要删除哪个数字的目录啊

[ Last edited by aobu129 on 2009-4-23 at 22:38 ]
第11楼 aobu129 发表于 2009-04-24 02:33
新手上路 发帖 11 积分 15
yishanju
能不能搞个基础点儿的教程给看看啊
我想学唉~~~ 批处理 你给的哪个for 里面的 这些我怎都没有见过??
第12楼 yishanju 发表于 2009-04-24 03:06
银牌会员 发帖 1,357 积分 1,488
搜一搜FINDSTR
学一学正则表达式
第13楼 aobu129 发表于 2009-04-24 04:31
新手上路 发帖 11 积分 15
正则表达式 我学过啊 以前在redhat下 用过 bash 学的
我是不知道 for这个语句 现在找到了 正在学 帮我看下 为何没有效果呢
@echo off
for /f "delims=" %%i in ('dir/a/s/b "C:\Program Files\Tencent\qq\"^|findstr -

ric:"C:\\Program Files\\Tencent\\qq\\[0-9][0-9][0-9][0-9][0-9]*"') do (
rd /Q/s %%i
)

pause
第14楼 aobu129 发表于 2009-04-24 23:12
新手上路 发帖 11 积分 15
再顶一下 楼上的问题
第15楼 freeants001 发表于 2009-04-25 00:21
中级用户 发帖 244 积分 330 来自 湖北
rd /Q/s %%i 改为 rd /Q/s " %%i"
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023