0

すべてのファイルの最後にランダムな英数字の文字列を追加するbashスクリプトを考え出したいのですが。文字列の長さを10にします。

したがって、ファイル名がhello.jpgの場合、次のようになります。hello_v41e6ebadx_.jpg

誰かがこれを達成する方法について何かアイデアがありますか?

4

1 に答える 1

3
for file in *.*
do
    name=${file%.*}
    ext=${file##*.}
    random=$(LC_CTYPE=C tr -cd 'a-zA-Z0-9' < /dev/urandom | head -c 10)
    mv "$file" "${name}_${random}_.${ext}"
done

mktempファイル拡張子に「X」が含まれていない場合は、を検討することもできます。

于 2013-01-31T19:09:51.423 に答える