« 2007年12月 | 過去ログ一覧 | 2008年02月 »
2008-01-02 (Wed)
■ ファイル名を exif の撮影日時に変更
※CodeRepos から github へ移ったので、それに応じて内容を書き換えました
デジカメで写真を撮ったりなんかすると、ファイル名が dsc00193.jpg みたいな味気無い感じでイヤです。嫌いです。なので、撮影日時に変更するスクリプトを書いて、github 内の gist へコミットしました。
- rename2exiftime (gist)
引数に指定したファイルの名前を変更します。
$ rename2exiftime photos/*.jpg photos/dsc00193.jpg to photos/2007.12.05_09.56.09.jpg photos/dsc00194.jpg to photos/2007.12.05_09.56.20.jpg photos/dsc00195.jpg to photos/2007.12.05_15.40.47.jpg photos/dsc00196.jpg to photos/2007.12.05_15.41.55.jpg photos/dsc00197.jpg to photos/2007.12.05_16.53.29.jpg
画像ファイル以外が指定されると適当な感じでスキップします。-s を付けて実行すると実際に名前の変更はしないで、変更の内容を画面に出力するだけです。いきなり名前が変わるのが嫌な場合にお勧めです。-q だとエラー以外は画面に出力しなくなります。
スクリプトは以下にも転載しておきますが、gist のファイルが最新です。
#! /usr/bin/env ruby require 'rubygems' require 'extexif' require 'optparse' def main simulation = nil quiet = nil help = nil OptionParser.new{|opt| opt.on('-s') { simulation = true } opt.on('-q', '--quiet') { quiet = true } opt.on('-h', '--help') { help = true } }.parse!(ARGV) if help usage exit end ARGV.each do |f| next unless(File.file?(f)) begin img = ExtExif.new(f) new_name = img['DateTimeOriginal'].gsub(/:/, '.').gsub(/\s/, '_') if(new_name !~ /^[\d\._]+$/) raise f + ": Could not read exif data." end new_name = File.join(File.dirname(f), new_name + File.extname(f)) if(File.exists?(new_name)) raise f + ": " + new_name + ' is already exists.' end puts f + ' to ' + new_name if(quiet.nil?) File.rename(f, new_name) if(simulation.nil?) rescue => err puts err end end end def usage puts <<-EOF -h,--help show this message. -q,--quiet quiet mode. -s only simulation. EOF end main
ヘルプメッセージが凄く手抜き。
△トップ | コメント (2) | トラックバック(0)
2008-01-04 (Fri)
■ グラコロ同盟
マクドナルドのグラコロは好きなので、毎年 たださんのグラコロ同盟活動 を横目に見ながら細々と食していたわけですが、なんと今日、なんとなくマクドナルドへ行ってみたら販売してるじゃないですか!グラコロが!!
さっそく嬉々として食べて来たという自慢話です。
ちなみに何故販売していたのか、いつまで販売しているのかは知りません!
△トップ | コメント (0) | トラックバック(0)