Linux 如何修改大量檔案名稱?

客戶反應放在 Linux server 上的 flash 互動教材無法播放,FTP 登入後發現檔案都在,目錄及檔案權限也正常,但就是無法播放。還好 Google Chrome 瀏覽器 提供了非常完善的 debug 功能才讓我注意到那一長串檔名裡,有一個字母大小寫不一樣… Orz

Linux 是大小寫不同 (case-sensitive) 的系統,所以大小寫不同視為不同的檔案,難怪會 404…

只要改檔名就解決問題了,但是客戶的檔案有好幾百個,一個一個改真是浪費人生啊 (茶)。還好 Linux 提供了可以批次改大量檔名的指令 rename。

rename 指令是這麼用的:

$ rename oldname newname files

第一個參數是 “要被替換的字”
第二個參數是 “替換的字”
第三個參數是 “要被替換的檔案”

要改副檔名的話,可以下這樣的指令:

$ rename .txt .html *.txt

如此一來,所有的 .txt 文字檔都會改成 .html。以此類推,也可以下

$ rename IMG img *.jpg

把照片的檔名改成小寫。這個指令也可以修改資料夾的名字,端看第三個指令怎麼篩選。

一個步驟就把客戶的檔案名字都改好了,收工。


Posted

in

,

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *