awk中的if

在awk中,能產生bool結果的操作符是


== !=
> <
>= <=
~ !~


共8個,然後,可以使用&& 或者 || 進行連接 得到的仍然是bool結果




awk 語法




'/pattern1/{可執行語句1} /pattern2/{可執行語句2}...'


awk是一行行處理數據,對於一個文件,首先讀入每一行,同時,根據定義,將每個字段$n 賦值。之後,判斷是否匹配模式,如果匹配,則執行pattern後的{}中個語句 


//之間是正則表達式 必須包含在//之間


值得注意的是,任何可以產生bool結果的語句都可以放在{}之前 比如 '$1=="df"{執行語句}'


這類似於if語句,同樣的效果可以在{}中使用。


但是,要注意的是模式的匹配。


在{}外,是//中


在{}中的if()裏面是 ""


如 
awk '/sdf/{}'
等同於 awk '{if($0~"sdf")}'


awk '!/sdf/{}'
等同於 awk '{if($0!~"sdf")}'



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章