中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-04 03:11
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助:用FOR检测文件在那个盘符而SET这个盘符 查看 831 回复 4
楼 主 求助:用FOR检测文件在那个盘符而SET这个盘符 发表于 2007-03-18 07:41 ·  中国 香港 腾讯云
初级用户
★★
积分 172
发帖 77
注册 2006-11-23 15:05
19年会员
UID 71489
性别 男
状态 离线
求助:用FOR检测文件在那个盘符而SET这个盘符
如:
@echo off
@for %%a in (d e f g h i g k l) do for "tokens=*" %%i in ('dir /b/a-d %%a:\My Music\哎呀.mp3') do set dddd=%%a
move/y "%dddd%:\My Music\*.*" %dddd%:\Audio\


以上命令好象无法运行,请高手指点
2 发表于 2007-03-18 10:59 ·  中国 安徽 马鞍山 电信
中级用户
★★
积分 493
发帖 228
注册 2007-02-16 00:38
19年会员
UID 79596
性别 男
来自 安徽
状态 离线
@echo off
for %%a in (c d e f g h i g k) do (
for /f "tokens=*" %%i in ('dir /b/a-d %%a:\"My Music"\哎呀.mp3') do (
set dddd=%%a
)
)

if not exist "%dddd%:\Audio" md %dddd%:\Audio
move/y "%dddd%:\My Music\*.*" %dddd%:\Audio\
3 发表于 2007-03-18 21:36 ·  中国 香港 腾讯云
初级用户
★★
积分 172
发帖 77
注册 2006-11-23 15:05
19年会员
UID 71489
性别 男
状态 离线
谢谢xycoordinate,解决了
4 发表于 2007-04-10 21:14 ·  中国 天津 电信
初级用户
积分 58
发帖 25
注册 2006-11-29 13:11
19年会员
UID 72096
性别 男
状态 离线
Originally posted by xycoordinate at 2007-3-17 09:59 PM:
@echo off
for %%a in (c d e f g h i g k) do (
for /f "tokens=*" %%i in ('dir /b/a-d %%a:\"My Music"\哎呀.mp3') do (
set dddd=%%a
)
)

if not ...


请教 批处理中的第三行 for /f 为什么不顶头写?而是要空了2格?是因为这样写便于观察命令行,还是书写格式有特定的要求?一直对这个不解请指教一下!!!
5 发表于 2007-04-11 01:28 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

为了使程序更通俗易读,并不是有这个规定,但这是个好习惯。
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
logictianjin +2 2007-04-11 01:42
论坛跳转: