grep by awk2010年11月14日 05時10分37秒

awk は

条件式{式}

が基本。これが各行に対して、評価される。「条件式」が真を返す行に対し、「式」を実行する。

しかし、{} で囲まれた式は省略可能で、省略時は、入力行が出力される。そこで、条件式に


/正規表現/

を用いることで、grep と同等の事が出来る。正確には正規表現を扱える egrep と同じ動作になる。更に正確を期すと、扱える正規表現には、若干の違いがある。


% grep match
a 
b
match
match
% awk '/match/'
a
b
match
match

今回の要点。

  1. 条件式{式}
  2. /正規表現/