我需要一個批處理文件來爲目錄中的文件列表創建一個進程。基於文件名中的字符串創建文件夾
文件名結構是,例如:00000_AAA_132144_2012021.txt
我需要的批次:
1 - 創建基於第二下劃線之後的數字的文件夾名稱,因爲這是唯一的在恆定命名。
2 - 將文件移動到新文件夾中。
在的該批次將創建一個名爲132144
文件夾,然後將文件移動00000_AAA_132144_2012021.txt
到該文件夾
對於類似的規定上面的例子中,我使用Endoro對我來說(見下文)創建的腳本。是否有可能修改此以符合我的要求?
@echo off &setlocal
for /f "delims=" %%i in ('dir /b /a-d *.PDF') do (
set "filename1=%%~i"
setlocal enabledelayedexpansion
set "folder1=!filename1:~11,6!"
mkdir "!folder1!" 2>nul
move "!filename1!" "!folder1!"
endlocal
)
由於間隔不變化,所以我已經使用嘗試了 \t \t/F 「delims = _標記= 3」 %%一個在( '回聲%文件名%')做設置目錄名= %%一個 @迴響 SETLOCAL enabledelayedexpansion FOR/F 「delims = _標記= 3」 %%一個在( '回聲%文件名%')都設置目錄名= %%一 組 「的文件名= %%〜i」 的 設置「folder =!filename!」 mkdir「!文件夾!」 2> nul 移動「!filename!」 「!夾!」 ) 但它似乎沒有正確定義新的文件夾名稱文件 –
我編輯了我的答案。適用於我。請讓我知道這對你有沒有用。 – unclemeat
是的!所有的好的感謝將節省我的時間! –