それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

renameコマンドでぱぱっと連番付きファイルを作成する。

連番を付記したファイルを作るのが、めんどくさくなってきた

for ループと sprintf を組み合わせたり、ruby ワンライナーでヤってたけど、だんだんめんどくさくなってきた

rename Commandでぱぱっと作ることにした

rename -N 01 -X -e '$_ = "京都旅行-2016-08-27_$N"' *.jpg

これでぱぱっと、ファイルを連番にできて便利すぎてヤバイ。

-N : 引数のフォーマットと開始番号を指定する。例えば 0001 なら4桁0埋め、 100 なら開始番号が100
-X : 拡張子を置換対象にしない
-e : 出力するフォーマット $N が番号が入る所

先頭に連番を付ける場合

もとのファイル名をそのままにして 先頭に連番を付ける場合

./rename -n -N 001 -X  -e '$_="$N\_$_"' *

2017/01/11追記: 辞書順に並んでしまう時

すでに連番が振っていて、辞書順に並んでしまうときは、ちょっと工夫が必要かもしれない。

rename -N 0001 -X -e '$_ = "img-$N"' $( ls -v  *.jpg )

ls -v が使えないときはもうけっこう大変だと思う。何かいい方法あるのかな

2022-05-30 追加

インストールする方法。

wget http://plasmasturm.org/code/rename/rename
chmod +x rename
./rename -h

apt で入るものが変わってたのでインストールし直した。