Board logo

标题: 用批处理判断是否有文件(夹)再执行命令?? [打印本页]

作者: Mnyoll     时间: 2009-8-29 05:57    标题: 用批处理判断是否有文件(夹)再执行命令??

有一个文件在"E:\下载\死神来了1.rmvb,....."
还有一个文件夹在"F:\电影\恐怖\死神来了\"(文件夹里有电影文件"点击播放.rmvb")
因为喜欢清晰版的,每天都在网上下载几部来替换
我想写个批处理,可以自动替换的....
也就是要先读出"E:\下载"里的电影文件,再来找出这个文件对应的文件夹.......
文件夹不是固定.....如果"F:\电影"里没有.....就去"H:\电影"里找
这个P看起来好像简单...
可我就是写不出.....写到一半就夭折了....


@echo off
for /f "tokens=1 delims=." %%A in ('dir /b "E:\下载\*.r*"') do (
   for /f "tokens=3 delims=\" %%B in ('dir /b/s/a:d "E:\电影\*"') do (
      for /f "tokens=1,2,3,4 delims=\" %%C in ('dir /b/s/a:d "E:\电影\%%B\*"') do (
        move /y E:\下载\%%A.rmvb %%C\%%D\%%E\%%A\点击播放.rmvb
      )
   )
)
pause
注意:
1:"E:\下载"里".rmvb"文件可能有好几个.......
2:文件有时候连我自己也不知道是什么类型的电影
   F:\电影\恐怖\...
   F:\电影\科幻\...
   F:\电影\爱情\...
   F:\电影\喜剧\...
3:如果在"E:\电影"里找不到就到"F:\电影"里找......再找不到就显示文件名出来

这样就是文件名没法确定,只知道在某个目录内
            目标路径不确定,只能根据文件名搜索