ファイル名にふった連番の一桁部分を0付きに変更するスクリプト

参考:MakeMyDay: ファイル名にふった連番の一桁部分を0付きに変更するスクリプト

#!/bin/bash

for f in *.jpg; do
    if [[ $f =~ .*_[1-9]\.jpg ]]; then
        mv $f `echo $f | sed 's/\(.*_\)\([1-9]\)\(.*$\)/\1\x30\2\3/'`
        if [ $? -eq 0 ]; then
               echo $f | sed 's/\(.*_\)\([1-9]\)\(.*$\)/\1\x30\2\3 :変更/'
           fi
       fi
done

 1年以上経つと、こういうスクリプトを作っていたこと自体すっかり忘れていました。1から始めるか01から始めるか悩ましいところがあります。

 ファイル名の変更にはファイル名変換アプリのpyrenamerを使って次のようにやることが多いです。GUIのアプリが起動します。
pyrenamer `pwd`

 普通にアプリを起動するとディレクトリを遡って指定しなければならず、これがかなり面倒です。./などという相対パスの指定は出来ないみたいなので、pwdコマンドを使っています。

 連番を01でつけるときは次のようにしています。
_{num2+1}.jpg