buddiyar兄:
@echo off
for /f "delims=_" %%i in ('dir /a-d /b *.jpg') do (move %%i_*.jpg %%i || md %%i && move %%i_*.jpg %%i)
好强大的脑袋啊,怎么想的??

不过美中不足,有点问题,如下:
E:\000>list2.cmd
E:\000>for /F "delims=_" %i in ('dir /a-d /b *.jpg') do (move %i_*
.jpg %i || md %i && move %i_*.jpg %i )
E:\000>(move 0001_*.jpg 0001 || md 0001 && move 0001_*.jpg 000
1 )
无法将多个文件移动到单个文件中。
E:\000\0001_0000_0000.jpg
E:\000\0001_0000_0001.jpg
E:\000>(move 0001_*.jpg 0001 || md 0001 && move 0001_*.jpg 000
1 )
存在一个重名文件,或是找不到文件。
子目录或文件 0001 已经存在。
E:\000>(move 0001_*.jpg 0001 || md 0001 && move 0001_*.jpg 000
1 )
存在一个重名文件,或是找不到文件。
子目录或文件 0001 已经存在。
E:\000>(move 0001_*.jpg 0001 || md 0001 && move 0001_*.jpg 000
1 )
存在一个重名文件,或是找不到文件。
子目录或文件 0001 已经存在。
E:\000\0002_0000_0000.jpg
E:\000\0002_0000_0001.jpg
E:\000>(move 0002_*.jpg 0002 || md 0002 && move 0002_*.jpg 000
2 )
存在一个重名文件,或是找不到文件。
子目录或文件 0002 已经存在。
E:\000>(move 0002_*.jpg 0002 || md 0002 && move 0002_*.jpg 000
2 )
存在一个重名文件,或是找不到文件。
子目录或文件 0002 已经存在。
E:\000>
------------
不知如何解决!