昨日のスラドの記事(http://slashdot.jp/yro/11/05/02/0138236.shtml)で読んだんです。そこで、タイトルにあるようなスクリプトを書いてみました。
#!/usr/bin/ruby -Ks def directory_search(path) list = Dir.glob("#{path}/*") list.each do |child| if File.directory?(child) directory_search(child) else `open #{path}/#{child}` if File.extname(child) =~ /(jpg)|(png)/ end end end if __FILE__ == $0 path = File.expand_path(File.dirname($0)) directory_search(path) end
実験してみると、ほんとに全部の画像が表示されて、自分のマシンが大変なことになりかけましたw 実験は自己責任で。
もし困ったら、実行中に、カレントプロセスをターミナルにして(要はターミナルウィンドウをクリックしてアクティブにするだけの話)、Ctrl+Cを押せば中断できるはずです。一回でダメなら複数回!
あと、画像の表示にopenコマンドを使っていますが(` `でかこまれた部分)これはMacでやっているからです。Windowsだと、なんだろう・・・調べてくださいw
はぁ・・・