複数のファイル名から[]を削除したい。 renameコマンドで実行するとエラーが発生します。
これを行う別の方法はありますか?
[]
は、Perl Regex構文の特殊文字であり、rename
コマンドで使用されます。使用する \
それらの前。例:
rename "s/\[|\]/_/g" *
つまり:
s replace
[
| or
]
with
_
* for all files here
私はこのコマンドを使用することを好みます:
for file in $(echo *|grep -E '(\[|\])'); do mv $file $(echo $file|sed -r 's/(\[|\])/_/g'); done
これにより、現在のディレクトリで角かっこがすべてアンダースコアに置き換えられます。