我需要你的帮助来完成一个Windows批处理(.cmd)文件,根据父文件夹名称创建一个新文件夹,并将一些文件移动到新文件夹。
(目录名和/或文件名总是不同的,可能有空格或点)
我设法根据当前的dir名称创建了文件夹,但我无法想象如何将文件移动到新文件夹。我在Total Commander的按钮中使用它,这是部分工作。
我不是程序员,只对批处理有基本的了解。我正在搜索很多例子并尝试但我找不到方法。 提前谢谢。
我有这个:
D:\Artist - Album\ <--- current start path
├──01-track1.wav
├──01-track1.flac
├──02-track2.wav
├──02-track2.flac
运行此行以根据父名称成功创建子文件夹:“艺术家 - 专辑(FLAC)”
for %%* in (.) do md "%%~n* (FLAC)"
结果:
D:\Artist - Album\
├───\Artist - Album (FLAC)\ <--- new folder OK!
├─01-track1.wav
├─01-track1.flac
├─02-track2.wav
├─02-track2.flac
我想要的是将.flac文件移动到新文件夹中,如下所示:
D:\Artist - Album\
├───\Artist - Album (FLAC)\ ┐
│ ├─01-track1.flac ├ ?
│ └─02-track2.flac ┘
├─01-track1.wav
└─02-track2.wav
答案 0 :(得分:1)
for %%a in (.) do md "%%~na (FLAC)"&move "*.flac" ".\%%~na (FLAC)\"
&
级联命令。
(未测试的)
请不要将符号用作元变量 - 只记录alpha(并且可能支持)和 *
,许多其他符号对批处理具有特殊意义。