我正在尝试将我的USB记忆棒格式化,以便在我的汽车中用作音乐数据库。 但是,我的收音机一次只能播放一个文件夹,所以我认为将艺术家的所有标题移动到艺术家的文件夹会很有帮助。
因为这就像32GB的音乐一样,需要手工完成很多工作。
我已经提出了以下脚本来完成这项工作(G:\是USB驱动器)
FOR /F %%T IN ('dir G:\ /B /A:D') DO (
FOR /R %%D IN (G:\%%T\*.*) DO MOVE "%%d" "G:\%%T"
)
到目前为止,这有效,但'dir G:\ /B /A:D'
命令最终以这种方式屠杀文件夹名称:“FOLDER NAME” - > “夹”。所以它基本上只是出于某种原因选择了第一个单词。
请帮忙。
答案 0 :(得分:1)
FOR
元变量是批量中区分大小写的少数几个地方之一。 %%D
mst与%%d
匹配 - 反之亦然。
(但你可能最好在"delims="
和元变量...之间包含FOR/f
,以确保将整个字符串分配给元变量。
答案 1 :(得分:0)
更改外部FOR命令:
for /f "tokens=*" %%T in ('dir /b /a:d "G:\"') DO (
...
)