ランダムに名前を付けられた複数のファイル名を一度に変更するには?

ランダムに名前を付けられた複数のファイル名を一度に変更するには?

ディレクトリにはランダムに名前が付けられたファイルがたくさんあります'.wav'。例えば

090913yui.wav
jiyafa123.wav
.
.
.
awe-6rt.wav

ファイル名を次に変更したい

file1.wav
file2.wav
.
.

など。

誰でも同じことをする方法を助けることができますか?端末を介してのみサーバーに接続できます。したがって、いくつかのコマンドを使用するだけです。

ベストアンサー1

ファイル名ワイルドカードパターンが*.wav変更したいすべての名前と一致すると仮定すると、次のループを使用して、一致する名前の名前を必要に応じて変更できます。

n=1
for name in *.wav; do
    while [ -e "file$n.wav" ]; do n=$((n+1)); done
    mv -- "$name" "file$n.wav"
done

これは一致するすべての名前を繰り返します。各名前に対して、$n名前がfile$n.wavまだ存在しない整数を探します。次に、現在の名前をその名前に変更します。

おすすめ記事