web-dev-qa-db-ja.com

ファイル名のコマンド特殊文字の名前を変更する

複数のファイル名から[]を削除したい。 renameコマンドで実行するとエラーが発生します。

これを行う別の方法はありますか?

2
user244823

[]は、Perl Regex構文の特殊文字であり、renameコマンドで使用されます。使用する \それらの前。例:

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

つまり:

s replace
[
| or
]
  with
_
* for all files here
2
user.dz

私はこのコマンドを使用することを好みます:

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

これにより、現在のディレクトリで角かっこがすべてアンダースコアに置き換えられます。

0
Frantique