您可以使用以下命令行将文件移动到基本文件夹:
for /R %a in (*) do @set f=%a& set f=!f:%cd%\=!& move "%a" !f:\=_!
从包含 1969、1970... 文件夹的文件夹中执行它。重要提示!:延迟扩展必须处于活动状态才能使此行正常工作,因此您必须事先激活它,使用 /V 开关执行 cmd.exe cmd /V
:.
例如:
>xcopy test backup /s
test\1969\ar\1.jpg
test\1969\ar\2.jpg
test\1969\en\1.jpg
test\1969\en\2.jpg
test\1969\he\1.jpg
test\1969\he\2.jpg
test\1970\ar\1.jpg
7 File(s) copied
>cd test
>dir /B
1969
1970
>for /R %a in (*) do @set f=%a& set f=!f:%cd%\=!& move "%a" !f:\=_!
>dir /B
1969
1969_ar_1.jpg
1969_ar_2.jpg
1969_en_1.jpg
1969_en_2.jpg
1969_he_1.jpg
1969_he_2.jpg
1970
1970_ar_1.jpg
以这种方式修改该行以将文件移动到另一个文件夹:
for /R %a in (*) do @set f=%a& set f=!f:%cd%\=!& move "%a" "\other\folder\!f:\=_!"
或者通过这个批处理文件:
@echo off
setlocal EnableDelayedExpansion
for /R %%a in (*) do set f=%%a& set f=!f:%cd%\=!& move "%%a" "\other\folder\!f:\=_!"