ちょっとしたスクリプトを書きました。
指定したディレクトリ内にある特定拡張子のファイルの行数を数えたかったので作りました。
ちゃんと動いているのは確認したのですが
もっと簡単な書き方絶対あるよね。。。教えて誰か!
def recursive_dir(path) cnt = 0 Dir::foreach(path) do |v| next if v == "." or v == ".." if path =~ /\/$/ v = path + v else v = path + "/" + v end if FileTest::directory?(v) cnt = cnt + recursive_dir(v) else ext = ".xxx" next unless v[v.length-ext.length..v.length-1]==ext#特定拡張子のファイルのみ c = IO.readlines(v).length cnt = cnt + c p v + " " + c.to_s end end return cnt end fullcnt = recursive_dir "トップディレクトリのパス" p "full_count : " + fullcnt.to_s