やりたいこと % ls hoge1.pdf hoge2.pdf hoge3.pdf を % ls hoge001.pdf hoge002.pdf hoge003.pdf としたい。ちなみに環境は Ubuntu 10.04 で、コマンドシェルには zsh を使っています。 ちょー簡単でした rename コマンド(正しくは file-rename かな?? Debian 系のディストリビューションではデフォルトで入っているみたい)を使います。perl で実装されているので、強力な正規表現を利用することが出来ます。シェルスクリプトで、と謳いながらほぼ perl です…ゴメンナサイ。 やってみよう まずはテストしてみる。(-n は --no-act の短縮形で、No Action ってことらしいです。) % rename -n 's/(\d+)/sprintf("%03d",$&)/e' *[0