next up previous contents
Next: script基礎 Up: awk Previous: awk   Contents

簡介

field的觀念是awk比sed好用的地方,相對於sed一行一行的處理,awk提供了 一行內部欄位拆解的處理,還有更powerful的像C程式語法迴圈控制處理。 通式可以是

awk 'script' var=value files
awk -f scriptfile var=value files

其中var是自定的awk變數,value是給定的值。這可以用來跟shell變數溝通。

另外像sed的regular express都拿一行行來作內定的輸入,再做比對,這樣很沒有 彈性,awk允許用awk的一個變數來作regular express的輸入比對,因此像欄位也 可以輕鬆的拿來比對。主要是用比對算符   來跟一個regular express比對,

var ~ /re/
var !~ /re/

這樣就很方便了,而且這比對也同樣會傳回true, false,可以當成一個condition。

除了欄位處理以外awk還有更多好用的function可以呼叫,另外也有了if,while, for與自定function的能力,這些比sed跟shell合併的能力又大上了許多,也是將來 perl的基本功能的基礎。



Cyril Huang 2002-06-14