2011年12月5日月曜日

bashで特定の拡張子を持つものだけヒットするような表現

最初"bash 正規表現 論理和"みたいなキーワードでググったけど、なかなか見つからなかった。。。
.TXTと.mだけヒットさせたい場合

$ ls
LICENCE.TXT README.TXT ccmp.m soundDelegate.h
Makefile ccmp d soundDelegate.m
$ ls *\.{TXT,m}
LICENCE.TXT README.TXT ccmp.m soundDelegate.m

とまあ、こんな感じで"{hoge,fuga}"とカンマで区切って中括弧で括れば実現できるようです。

[参考:UNIX/基礎知識/ワイルドカード、メタキャラクタ - 会津大学UNIXウィキ]

06から19までを"{0[6-9],1[0-9]}"と表現する事も可能。(もっと簡単な表現が有りそうですが)

0 コメント: