あるディレクトリにあるwavファイルとそれをlameでmp3にしたファイルとの
サイズ比を計算するスクリプトを作ってみた。> ruby a.rb directory
一応目的の結果が得られるのですが、ハッシュのキーソートの部分やら
もっと簡潔に出来ないでしょうか?

wfsize = {}
mfsize = {}
ARGV.each { |dir|
dir = dir.sub(/\\$/, "")
Dir.glob(dir + "/*.{[wW][aA][vV],mp3}") { |f|
bf = File.basename(f, ".*")
if /\.wav$/i =~ f then
wfsize[bf] = File.stat(f).size
else
mfsize[bf] = File.stat(f).size
end
}
}
wfsize.to_a.sort { |a, b|
String(a).upcase <=> String(b).upcase
}.each { |w|
printf "%-40s圧縮率:%3d%%\n", w[0], Integer(mfsize[w[0]]) * 100 / Integer(w[1])
}