ablog

不器用で落着きのない技術者のメモ

任意のディレクトリ配下にどのような拡張子のファイルがどれだけあるか集計する Perl ワンライナー

$ perl -MFile::Find -MFile::Basename -e 'find sub{$h{(fileparse($_,qw{\.[^\.]+$}))[2]}++ if -f},@ARGV;END{map{print "$_:$h{$_}\n"}keys %h}' .
.sh:27
.pl:3
.conf:9
.rman:1
.sql:9

関連


追記:

@yoheia 複数プロセス可なら find . | sed -ne 's/^.*\/[^/][^/]*\(\.[^/][^/]*\)$/\1/p' | sort | uniq -c でどうでしょう?

posted at 12:13:09

正規表現すごいっすね。目が痛い><