awk

awk 是一種處理資料且可產生報告的語言,功能相當強大。

awk 的作用格式

awk '樣式' 檔案 : 符合樣式的列顯示出來

awk '{動作}' 檔案 : 對每一列都執行{}中的動作

awk '樣式{動作}' 檔案: 符合樣式的列,執行{}中的動作

awk 的作用法 1

awk '/La/' dataf3

顯示含 La 的列

awk 的作用法 2

awk '{ print $1, $2 }' dataf3

顯示每一列的第 1 及第 2 欄

awk 的作用法 3

awk '/La/{ print $1, $2 }' dataf3

將含有 La 的列的第 1 及第 2 欄顯示出來

awk 的作用法 4

awk -F: '/ols3/{ print $3, $4 }' /etc/passwd

以 : 為分隔字元,將 passwd 檔中的 ols3 使用者的 uid 及 gid 顯示出來

awk 的作用法 5

awk -F: 'BEGIN{OFS="+++"}/ols3/{ print $1, $2, $3, $4, $5 }' /etc/passwd

以 : 為分隔字元,將 passwd 檔中的 ols3 使用者的第 1~5 欄顯示出來,且顯示的分隔符號設為 +++

輸出結果:ols3+++x+++500+++500+++

BEGIN{} 用來指示 awk 一開始做一些初始化的設定,OFS="+++" 是設定輸入欄位間的分隔符號之意