2017-07-30 97 views
0

我需要您的幫助才能完成Windows批處理(.cmd)文件,以便根據父文件夾名稱創建新文件夾並將某些文件移動到新文件夾中。創建具有相同名稱的新子文件夾並將文件移動到新文件夾

(包括目錄名和/或文件名稱將永遠不同,可以有空間字符或點)

我設法創建的文件夾基於當前目錄的名字,但我無法弄清楚如何將文件移動到新的文件夾。我在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

'md「%cd%(FLAC)」&move * .flac「%cd%(FLAC)」' – Aacini

回答

1
for %%a in (.) do md "%%~na (FLAC)"&move "*.flac" ".\%%~na (FLAC)\" 

&級聯命令。

(未經測試)

請不要使用符號元變量 - 只阿爾法都記錄(可能支持)*和許多其他的符號有特殊含義批次。

+0

您可以在技術上使用任何128個基本ASCII字符作爲元變量,但只建議使用字母。 – SomethingDark

+0

經過測試,它完美的工作!感謝 並感謝您的推薦;) – tripfog

相關問題