Linux
如何在 Unix 的單個命令或腳本中重命名多個文件?
我有以下文件列表
aro_tty-mIF-45875564pmo_opt aro_tty-mIF-45875664pmo_opt aro_tty-mIF-45875964pmo_opt aro_tty-mIF-45875514pmo_opt aro_tty-mIF-45875524pmo_opt
我需要重命名為
aro_tty-mImpFRA-45875564pmo_opt aro_tty-mImpFRA-45875664pmo_opt aro_tty-mImpFRA-45875964pmo_opt aro_tty-mImpFRA-45875514pmo_opt aro_tty-mImpFRA-45875524pmo_opt
大多數標準 shell 提供了一種在 shell 變數中進行簡單文本替換的方法。http://tldp.org/LDP/abs/html/parameter-substitution.html解釋如下:
${var/Pattern/Replacement} First match of Pattern, within var replaced with Replacement.
所以使用這個腳本來遍歷所有適當的文件並重命名它們:
for file in aro_tty-mIF-*_opt do mv -i "${file}" "${file/-mIF-/-mImpFRA-}" done
我添加了一個 -i 選項,因此您有機會確認每個重命名操作。與往常一樣,在進行大量重命名或刪除之前,您應該備份所有文件。