複数のフォルダがあり、それぞれに約175個のファイルがあります。ファイル名は次のようになります。
1.wav
2.wav
3.wav
......
175.wav
名前を変更する必要があります
A1.wav
A2.wav
A3.wav
......
A175.wav
つまり、以前のファイル名に文字を追加する必要があります。
これを簡単に行う方法があるかどうか知りたいです。
Ubuntuのバージョンは16.10です
答え1
方法はいろいろありますが、私の場合は「for」ループを選択します。
for f in *.wav ; do mv "$f" "A$f" ; done
これはシンプルで、他のニーズに合わせて簡単に変更できます...
答え2
ユーザーprename
コマンド:
$ prename -nv 's/^(.*)$/A$1/' *.wav
1.wav renamed as A1.wav
2.wav renamed as A2.wav
3.wav renamed as A3.wav
読み方は簡単です:
*.wav
シェルはワイルド カードを で終わるすべてのファイルのリストに拡張できます.wav
。シェルが完全なコマンドを実行すると、コンピューターはprename -nv 's/^(.*)$/A$1/' 1.wav 2.wav 3.wav
などを実際のコマンドとして認識します。- は
's/^(.*)$/A$1/'
、実際にはs/PATTERN/REPLACEMENT
グループ化された正規表現であり(.*)
、これにより、ファイル名全体を最初から^
最後までグループ化し$
、 として参照することができます$1
。
-nv
スイッチは verbose-v
と dry-run用であることに注意してください-n
。テスト実行に満足したら、削除して-n
実際の名前変更を適用します。
答え3
使用方法rename
:
rename 's/([0-9]+).wav/A\1.wav/' *.wav
s/SEARCH-FOR/REPLACE-WITH/ within-this-files
([0-9]+)
数値セクションを保持している場合は、 を使用して再度使用できます\1
。A\1.wav
:A
+ (数字セクション) +.wav