Linuxのbashでファイル名を変更する

Linuxのbashでファイル名を変更する

hh-mm-ss.png形式のファイルがたくさんあります。ここで、hh、mm、ssはそれぞれ時、分、秒です。すべてのファイルが時、分、秒でソートされるように、ディレクトリ内のすべてのファイルの名前を1.pngからn.pngに順番に変更するにはどうすればよいですか?例えば、

12-56-11.png -> 3.png
11-13-49.png -> 1.png
12-55-55.png -> 2.png

答え1

forループとbash算術を使用するソリューションは次のとおりです。

i=1
for file in ??-??-??.png ; do
    mv "$file" $i.png
    let i++
done

関連情報