複数のディレクトリの名前を変更するには?

複数のディレクトリの名前を変更するには?

これは私のディレクトリです:

P [001]
P [002]
P [003]

名前を次に変更したいです。

P001
P002
P003

私はコードを使用しました:

for P in *\ *; do mv '$P' '${P// /_}'; done

でも何か抜けました。

ベストアンサー1

努力するprename

$ ls
P [001]  P [002]  P [003]
$ prename 's/[ \[\]]//g' P\ *
$ ls
P001  P002  P003
$

'または、元のスクリプトアプローチに固執してください(正規表現を少し変更してわずかに"変更します)。

$ ls
P [001]  P [002]  P [003]
$ for P in *\ *; do mv "$P" "${P//[\[\] ]/}" ; done
$ ls
P001  P002  P003
$

おすすめ記事