中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 怎么确定一个模糊目录 上一主题 | 下一主题
fsl2008dos
新手上路





积分 4
发帖 1
注册 2008-3-6
状态 离线
『楼 主』:  怎么确定一个模糊目录

1  在脚本(.bat)里有一句:
    path\test.ext testfile.ts.
    假设在testfile.ts里有三部分, 然后执行完后, test.exe要生成三个目录。
    生成的目录名字由三部分组成: 年月日_时分秒_测试名字。
2  然后, 我需要在生成的三个目录中,选择一个目录进行操作。
   前边生成的目录, 我只知道最后一部分,但时间无法知道, 也就是说, 不能确定完整的目录名字, 只知道目录中含有一个特定的关键字, 请问怎么确定?

   比如: 第一步生成三个目录:  "20070930_193650_failed_tests". "20071001_003314_MCADI_CADI", "20071002_084312_MCADI_PERF".
     在第二步需要对其中的一个目录进行操作, 比如需要对"20071001_003314_MCADI_CADI" 进行操作。  但无法知道完整的名字, 只知道该目录的名字中包含 “MCADI_CADI”。  (这里给出了完整名字, 只是为了说明问题)。  请问怎么确定?

   我用了一个办法:
set mypath=D:\test_dofailcase\*failed_tests
rem path=D:\test_dofailcase\20070930_193650_failed_tests

dir /b /s /O %mypath%\executionLog.txt >logfiles.txt

  意思是希望能用通配符 × 号来代替前边不确定的部分, 但不行。

  请各位高手多多指点啊!  鄙人急得乱蹦!!!!!!!

2008-3-6 16:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 2 楼』:  

这个是目录
@echo off
for /f "delims=*" %%a in ('dir /s/b/ad *^|find /i "failed_tests"') do set mypath=%%a
echo %mypath%
pause
这个是文件
@echo off
for /f "delims=*" %%a in ('dir /s/b/a-d *^|find /i "failed_tests"') do set myfile=%%a
echo %myfile%
pause
运行环境Cmd



第一高手    第二高手

2008-3-6 19:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: