連番のファイル群を参照する時に、ソートが意図した通りにならなかった事は無いでしょうか? 1 の後は 2 3 と連番になって欲しいけれど、1 の後が 10 11 .. 、2 の後が 20 21 … となってしまう。ls コマンドは、あくまで文字コードの順番でソートされるので数字の番号を意識してくれません。しかし番号の桁数を1 -> 001 や、10 -> 010 と揃えれば、文字コードの順番に番号が連番にソートされるようになります。しかしこの手のファイルはディレクトリに沢山あって手動で1つずつ変更するのは手間がかかります。今回はいくつかのパターンに対応したファイル名に含まれている番号の桁数をそろえるスクリプトを紹介したいと思います。

続きを読む