2011/01/23(日)コマンドラインベースのリネーム

コマンドラインベースのリネーム

昨日,audaciousのスキンを導入してみたんですけど,そういえばその際ちょっと困ったことが.
配布されていたArchiveが,ファイル名に日本語を使用したファイルを含んでいたりしたらしく,
うちの環境ではファイル名の一部分が文字化けしてしまったのです.
で,文字化けしたファイル名の一部分を置換したくなったんですけど,対象ファイルが結構多くて…….

全部手作業でやるのも芸がないし面倒くさいので,簡単なScript書きました.
#/bin/bash

#引数1:対象ディレクトリ
#引数2:検索対象のラフな設定(拡張子や一致するパターン)
#引数3:どこの名前を変えたいかsedの正規表現書式
#(s/置換したい文字列/置換後の文字列/g)で記述する.

cd $1

for renamebefore in $2
do
renameafter=`echo "$renamebefore" | sed -e "$3"`
mv "$renamebefore" "$renameafter"
done

このシェルスクリプトを適当な名前で保存し,引数をとらせて実行すれば,目的を達成できるわけです.
けど,こんなことをしなくても,renameコマンドがLinuxでは用意されていたりして.
スクリプトを書いてから気がつきましたよ.しかも正規表現を使うところも一緒.まあいっか…….
それに,テキストファイルで保存しておくことで,
後から「この操作をしたいときどうするんだっけ?」っていうのに対処しやすくなるし.

まず,調べることが大切……と……….

ユースキンを求めて

肌荒れがひどく,薬を求めて市内まで下ってきました.
国道の坂で,日陰になっている部分は雪が融けていなくて,自転車を押していく羽目に.
結構な距離を歩きました.先日人の車に乗せてもらって市内まで行って,確認したつもりだったんですけど…….
目的のものはそろえて,後はまあいつも通りな感じでした.最近は下り坂でスピードを出せないのがもどかしいです.
転けて死ぬよりは遙かにマシなので仕方ないですけど.