Board logo

标题: 求助:用FOR检测文件在那个盘符而SET这个盘符 [打印本页]

作者: cjfcjf222     时间: 2007-3-18 07:41    标题: 求助:用FOR检测文件在那个盘符而SET这个盘符

求助:用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\


以上命令好象无法运行,请高手指点
作者: xycoordinate     时间: 2007-3-18 10:59
@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\
作者: cjfcjf222     时间: 2007-3-18 21:36
谢谢xycoordinate,解决了
作者: logictianjin     时间: 2007-4-10 21:14


  Quote:
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格?是因为这样写便于观察命令行,还是书写格式有特定的要求?一直对这个不解请指教一下!!!
作者: lxmxn     时间: 2007-4-11 01:28

为了使程序更通俗易读,并不是有这个规定,但这是个好习惯。