谁帮忙写一个文件分类的批处理BAT文件

来源:百度知道 编辑:UC知道 时间:2024/05/13 08:39:47
C:\...\...0001.TIF
...0002.TIF
...0003.TIF
...0004.TIF
...0005.TIF
...0006.TIF
...0007.TIF
...0008.TIF
...0009.TIF
...0000.TIF
把偶数结尾的TIF文件 移动到D:\相同的目录下
把奇数结尾的TIF文件 移动到E:\相同的目录下
那位高手帮帮忙~~~~
就我说的不明白了,对不起大家的感情和脑细胞
D:\相同的目录下
(D和E盘下没有任何目录,可以用批处理自动在D和E盘生成建立相同的目录并把TIF移动进去吗)

@echo off
for /f "delims=" %%a in ('dir/b c:\x\*.TIF') do call :next %%a
echo 任务完成,请按任意键关闭...
pause>nul
goto :eof
:next
set pp=%1
set qq=%1
set pp=%pp:~-5,1%
set /a pp=pp %% 2
if %pp%==1 (move c:\x\%qq% e:\x\%qq%)
if %pp%==0 (move c:\x\%qq% d:\x\%qq%)

ps:上面假设要移动的文件放在c:\x\下,可根据需要修改,另外有个缺点就是如果里面还有不是数字结尾的TIF文件(如abc.TIF)将会被当作是偶数结尾的。原理是通过dir/b c:\x\*.TIF 得到目标目录下所有的tif文件名,然后取文件名的最后位(也就是".tif"的前一位即倒数第5个字符),将最后位跟2取余来判定是奇数还是偶数。

可以的,忘记了,呵呵,只要在"@echo off"后加一句:
md d:\x
md e:\x

@echo off
md d:\abc
md e:\123
for /f "delims=" %%a in ('dir/b/s "c:\....\*.tif"') do call :lis "%%a" "%%~na"
pause&exit
:lis
set "var=%~2"
set "var=%var:~-1%"
for /l %%i in (0 1 9) do (if "%%i"=