Re: [問題] 檔名更改

作者: Tabrith (血糖瑪琪朵)   2020-01-21 05:33:57
不確定我懂你的描述,是像這樣的狀況嗎?
先依照每個檔案的上層目錄以及流水號改名,整個搬到新資料夾「1」,
然後你要手動把caseABC砍掉,再把「1」改回caseABC。
\caseABC\hottest\1.jpg → \caseABC\hottest_1.jpg
\caseABC\hottest\2.jpg → \caseABC\hottest_3.jpg
\caseABC\hottest\3.jpg → \caseABC\hottest_5.jpg
\caseABC\aaa\4.jpg → \caseABC\aaa_7.jpg
\caseABC\aaa\5.jpg → \caseABC\aaa_9.jpg
\caseABC\bbb\6.jpg → \caseABC\bbb_11.jpg
最終結果變這樣的話,那好像沒有必要搬走…?
https://i.imgur.com/cRco48S.jpg
流程:
- 依照 fullname descending 排序,這樣會先處理檔案再處理資料夾。
- 把檔案搬走順便改名
- 遇到資料夾先檢查裡面有沒有東西,如果沒意外是空的就砍掉
PS:
- 這個 script 會把所有東西搬出來,不管有幾層子目錄
- 一次處理上萬個檔案應該要做更多檢查跟意外防範
- 可把 -Verbose 改成 -WhatIf 先跑跑看 (當然這樣資料夾就不是空的所以不會有反應
※ 引述《JokePtt (思辨成魔)》之銘言:
: https://i.imgur.com/3r69LqW.jpg
: 不好意思 又上來叨擾各位
: 我用軟體把pdf轉jpg 生成了數千個子資料夾 
: (1)我想把檔案全部一次命名 圖中B部分比如是caseABC以下數千個子目錄下的檔案
: 圖中A部的hottest只是其一子目錄 如當中檔案1.jpg 2.jpg 3.jpg 檔案數不固定
: 重命名為 子目錄名 + 分隔號 _ + 檔案流水號*2-1
: 如 hottest_1.jpg hottest_3.jpg hottest_5.jpg...
: 在B部分的caseABC下所有子目錄檔案皆找各自的子目錄(A部分名)重新命名
: 該如何用cmd或powershell??
: (2)我要將F:\Data\Projects\caseABC 數千個子目錄下改好名的各檔案
: 一起移至與B同階的 子目錄1 以圖例是 F:\Data\Projects\1
: 又該怎麼下指令?!
: 當然移完後的動作 我會直接在caseABC上點內容 確認沒有檔案後移除
: 再把資料夾 1 改名為 caseABC 手動就可以完成
: 只是前兩點對於數千個生成的資料夾 及裡面總數上萬個檔案
: 有點不知所措 還請各位賢德不吝賜教 感恩

Links booklink

Contact Us: admin [ a t ] ucptt.com