重新命名命令檔名中的特殊字符

重新命名命令檔名中的特殊字符

我想刪除多個檔案名稱中的 []。使用重新命名命令執行此操作時出現錯誤。

有其他方法可以做到這一點嗎?

答案1

[]是指令使用的 Perl Regex 語法中的特殊字元rename。用\在他們前面。例子:

rename "s/\[|\]/_/g" *

IE:

s replace
[
| or
]
  with
_
* for all files here

答案2

我更喜歡使用這個指令:

for file in $(echo *|grep -E '(\[|\])'); do mv $file $(echo $file|sed -r 's/(\[|\])/_/g'); done

這會將目前目錄中的所有方括號替換為底線。

相關內容