本帖最后由 nickl 于 2013-5-3 12:09 编辑
各位大俠你們好,
小弟有大量檔案(檔案名後段 6 個字中, 必定有 AA 二字)需要移動到不同資料夾, 檔案及資料夾放左同一路徑, 形式如下
只根據檔案的頭5個字, 尋找一個頭5個字與檔案相同的資料夾(所有資料夾, 頭5個字必定不同), 把檔案移進去, 如沒有一個資料夾付合條件, 以檔案頭5個字開啟一個新資料夾, 並移進去.
如:
檔案a: ab123 abc ltd 123AA6
檔案b: ab123 abc BCD ltd 222AA2
檔案c: mm111 mmm ltd UK 258AA1
檔案d: FF789 ffff ltd co US 666AA6
檔案e: KK000 KK ltd 622AA2
資料夾a: ab123 abc ltd
資料夾b: mm111 mmm ltd UK
資料夾c: FF789 ffff ltd co US
結果:
檔案a 及 b, 移動到資料夾 a
檔案c, 移動到資料夾 b
檔案d, 移動到資料夾 c
檔案e, 開啟資料夾 kk000, 檔案e 移動到資料夾 kk000
小弟為新手, 自己寫了以下代碼, 但出現標籤語法錯誤, 應該是 "%%a *\ 的問題?
請各位高手多多幫忙, 如不行亦煩請告之, 感激萬分!- @echo off
- for /f "tokens=1-20 delims= " %%a in ('dir /b *AA*.*') do (
- if not exist "%%a *" md "%%a"
- move "%%a %%b %%c*%%d*%%e*%%f*%%g*%%h*%%i*%%j*%%k*%%l*%%m**%%n*%%o*%%p*%%q*%%r*%%s*%%t*" "%%a *"
- )
- echo sorted
- pause
复制代码 |