我有很多電影在不同的流派文件夾。我想通過批處理文件執行的操作是爲電影所在的同一流派文件夾中的每個電影創建一個文件夾。例如:基於批處理的文件/文件夾創建
/Movies/SciFi/
/Movies/SciFi/the matrix.avi
/Movies/SciFi/the matrix reloaded.mkv
/Movies/Comedy/
/Movies/Comedy/borat.avi
/Movies/Comedy/dinner for schmucks.avi
基本上我想運行從父文件夾電影的批處理文件,掃描所有的流派文件夾* .MKV * .AVI * .mp4文件,並創建一個基於電影名稱的文件夾。文件夾的名稱應爲:
.(moviename without extension).backdrop
Ofcourse如果文件夾已存在,則不應創建文件夾。這是我到目前爲止有:
for /f %%f in ('dir *.avi *.mkv *.mp4 /b') do md .%%~nf.backdrop
這有一些缺點,但我必須從每個流派文件夾中運行它,如果文件名中有一個空格,該命令將只趕上了一切直到空間,渲染aboce命令幾乎沒用。
希望你們能幫助我。
但*會*有額外的子目錄,一旦該腳本已運行。這意味着這個解決方案只能使用一次,所以FOR/R不是一個好選擇。如果目錄已經存在,也會給出錯誤信息。 – dbenham 2012-01-16 13:48:40
然後,您可以在(「c:\ movies \ *」)中使用'for/d %% d(do ... ...),而您可以使用'if exists'檢查文件夾是否存在http://ss64.com/ NT/if.html – 2012-01-16 13:54:09