Linux Script:mv, rename 單次及批次修改檔案名稱

圖片來源:http://gihansblog.wordpress.com/2011/10/29/a-shell-script-for-renaming-large-number-of-file-in-linux/

在 Windows 系統中,無論我們要重新命名資料夾或是檔案,
通常都點下右鍵後選擇重新命名即可,
如果對快捷鍵比較熟,直接按下 F2 可以更快地達成目的。
而在 Linux 系統中,重新命名資料夾或檔案也可以透過同一個指令來達成,這個指令是 mv !mv 是 move 的縮寫,他除了移動檔案資料夾的功能外也可以同時重新命名。
所以其實仔細想想拿他來重新命名檔案也不會很難理解啦,
重新命名時只是把檔案移動到同一個資料夾,然後趁著移動時把檔名給順便改了!

說了這麼多那 mv 指令到底該怎麼使用呢?
# mv $1 $2
# $1: 舊檔案或資料夾名稱
# $2: 新的檔案或資料夾名稱
mv oldname.txt newname.txt

上面的方法是用來重新命名單一檔案或資料夾,
但是當一個目錄資料夾底下有很多有特定規則檔名的檔案需要改名,
例如相機產生的檔案 IMG001.jpg~IMG999.jpg 超多檔案,
這絕對不可能直接用 mv 一個個慢慢敲來改名的。
這時候另一個指令就可以派上用場了,
rename 這個指令可以用來批次修改檔名共同的部分,使用方式如下:

# rename $1 $2 $3
# $1: 要被取代的關鍵字
# $2: 新的關鍵字
# $3: 檔名符合這個規則的才取代

# 把 IMG001.jpg, IMG002.jpg… 換成 img001.jpg, img002.jpg… 
rename IMG img IMG*

# 把所有 .htm 檔案改成 .html
rename .htm .html *.htm

# 把檔案 foo1, ..., foo9, foo10, ..., foo278.
# 改成 foo001, ..., foo009, foo010, ..., foo278.
rename foo foo0 foo?
rename foo foo0 foo??

關鍵字:linux, rename, file, folder, 改檔名, 重新命名, batch rename, 批次, 用法, 指令, move, mv, inux資料夾, 重新命名軟體, 檔案, 工具, 程式, 大量
參考資料:


相關文章

這個網誌中的熱門文章

【汽機車燃料費攻略】2019/108年度信用卡回饋/分期整理!

【永豐大戶DAWHO】現金回饋信用卡國內2%國外3%最高8%!

【證件遺失補辦】身分證/健保卡/駕照/行照/信用卡總整理

【永豐DAWHO攻略】申辦DAWHO帳戶/信用卡最佳申辦順序!

【博客來折價券】博客來免費序號e-coupon分享(持續更新)

【永豐大戶DAWHO】活存100萬內1.1%+16次免費跨轉跨提!

秒級偵測網頁更新變動通知(PageMonitor,Check4Change)

【超商懶人包】消費享10%回饋攻略+繳費取貨也能賺回饋?

【永豐信用卡推薦方案】首刷800+指定卡再200或機場接送!

【銀行代碼查詢】3碼銀行代碼列表、7碼分行代碼查詢