1. 程式人生 > >shell命令-awk

shell命令-awk

|–awk命令列
awk的呼叫可以定義變數、提供程式、指定輸入檔案
awk [-F fs] [-v var=value … ] ‘program’ [ – ] [ var=value … ] [ file(s) ]
awk [-F fs] [-v var=value … ] -f programfile [ – ] [ var=value … ] [ file(s) ]
短程式是直接在命令列上提供,長程式通過委託-f選項指定,如果未指定檔名,awk會讀取標準輸入
| --是特殊選項:指出awk本身沒有進一步的命令列選項,接下來的選項可被你的程式使用
-F選項用來定義預設欄位分隔符,一般慣例作為第一個命令列選項,後面的fs引數是一個正則,或是被作為下一引數
| -v選項在下一程式啟動前生效
連字號‘-’表示標準輸入
|---------------------------------------------------------------------------------------------------------
|–awk程式模型
| 一個awk程式是一對以模式與大括號框起來的操作組合而成的
|–程式元素
| awk提供了標量與陣列兩種變數以儲存資料、數字與字串表示式,還提供了一些語句型別以處理資料:賦值、註釋
| 條件、函式、輸入、迴圈及輸出
|–》註釋與空白
| 從#開始到該行結束
|–》字串與字串表示式
| awk的字串常數以引號定界,如“this is a string”
|–》數字與數值表示式
| 所有awk數字都以雙精度的浮點值表示
|–》標量變數
| 變數與大小寫有關
|–》陣列變數
| 陣列標號可以是數字,也可以是字串
| 陣列儲存空間自動增長
|–》命令列引數
| ARGC ARGV
|–》環境變數
|–模式與操作

ref