问题:
一目录下 有 N个jpg,现在想按文件名第一个_前四位数 建立文件夹 并将相应的jpg移动到对应的目录里去,即0001_*.jpg 到0001目录下、0002_*.jpg 到0002目录下
0001_0000_0000.jpg
0001_0000_0001.jpg
……
0002_0000_0000.jpg
0002_0000_0001.jpg
……
俺的答案:
@echo off
for /f "delims=_" %%i in ('dir /a-d /b *.jpg') do md %%i & move %%i_*.jpg %%i
问题如下:
E:\000>list3.cmd
E:\000\0001_0000_0000.jpg
E:\000\0001_0000_0001.jpg
子目录或文件 0001 已经存在。
存在一个重名文件,或是找不到文件。
子目录或文件 0001 已经存在。
存在一个重名文件,或是找不到文件。
E:\000\0002_0000_0000.jpg
E:\000\0002_0000_0001.jpg
子目录或文件 0002 已经存在。
存在一个重名文件,或是找不到文件。
子目录或文件 0002 已经存在。
存在一个重名文件,或是找不到文件。
E:\000>
可以看到有重复的行为。浪费资源。 请大家讨论。
一目录下 有 N个jpg,现在想按文件名第一个_前四位数 建立文件夹 并将相应的jpg移动到对应的目录里去,即0001_*.jpg 到0001目录下、0002_*.jpg 到0002目录下
0001_0000_0000.jpg
0001_0000_0001.jpg
……
0002_0000_0000.jpg
0002_0000_0001.jpg
……
俺的答案:
@echo off
for /f "delims=_" %%i in ('dir /a-d /b *.jpg') do md %%i & move %%i_*.jpg %%i
问题如下:
E:\000>list3.cmd
E:\000\0001_0000_0000.jpg
E:\000\0001_0000_0001.jpg
子目录或文件 0001 已经存在。
存在一个重名文件,或是找不到文件。
子目录或文件 0001 已经存在。
存在一个重名文件,或是找不到文件。
E:\000\0002_0000_0000.jpg
E:\000\0002_0000_0001.jpg
子目录或文件 0002 已经存在。
存在一个重名文件,或是找不到文件。
子目录或文件 0002 已经存在。
存在一个重名文件,或是找不到文件。
E:\000>
可以看到有重复的行为。浪费资源。 请大家讨论。

do (move %%i_*.jpg %%i || md %%i && move %%i_*.jpg %%i)
