昨日、たださんがコミットした自動 UTF-8 化コードは tDiary のデータファイルの TDIARY_MAGIC を見て変換の必要性を判断している。これを止めるには
@options['stop_migrate_01'] = true
とかを tdiary.conf に書けばいいんだけど、データファイルの方の TDIARY_MAGIC を一括置換して対応してしまった。一括置換はこんな感じ
perl -i -w -p -e 's/TDIARY2.00.00/TDIARY2.01.00/g' **/*.td2
他にも tdc,tdr も実行する必要がある。
ruby でやるならこんな感じ?
ruby -i -p -e '$_.gsub!(/TDIARY2\.00\.00/, "TDIARY2.01.00")' **/*.td2
Ruby レシピブックに書いてある通りなのでたぶん動く。
何で文字列置換を perl でやったかというと、文字列置換は高専で習った
sed 's/foo/bar/g'
みたいなのが頭の中にあるからなんだよねえ。
こういう形式で ruby でも出来るんだっけ?
Perlかよ!(お約束)
期待通りのツッコミありがとうございました!
$_は無くてもよさそうですね。前にやりました。<br>http://www.machu.jp/diary/20070224.html#p01
最近のGNU sedならsed -i 's/foo/bar/g' でok
>まちゅさん<br>お、ホントだ。ありがとうございます。<br><br>>ebanさん<br>man sed しても書いてなかったので気がつかなかった…。確かに -i で上書きされますね。ありがとうございます。
manじゃなくてinfo見ないとダメっす。