awk: 報告生成工具shell
把文件中讀取到的每一行的每一個字段分別進行格式化,然後進行顯示;express
awk --> new awk --> nawk工具
GNU awk, --> gawkspa
用法格式:3d
awk [option] 'script' FILE ...code
awk [option] '/pattern/{action}' FILE ...blog
action: print $1ip
模式:io
地址界定: /pat1/,/pat2/class
/pattern/ 還能夠在界定模式上面加 ! 取反 --> !/pattern/
expression: 表達式
> :大於
>=:大於等於
< : 小於
<= :小於等於
== :等於
!= :不等於
~ : 模式匹配
打印id號大於等於500 的用戶
awk -F : '$3>=500{print $1}' /etc/passwd
BEGIN: 執行前的準備工做
END: 執行後的收尾工做
awk的內置變量
NF: 字段數,在執行打印時,將打印最後一個字段內容
FS :讀入行時,使用的字段分隔符,默認爲空白。下面是變量賦值指定分隔符爲 : ,要加引號。
OFS: 輸出時使用字段分隔符,默認爲空白,下面指定爲 * 做爲輸出分隔符:
練習:
1)顯示GID小於500的組
2)顯示默認shell爲nologin的用戶
3)顯示eth0網卡文件的配置信息,注意,只顯示等號後面的值
4)顯示/etc/sysctl.conf文件中定義的內核參數,只顯示名稱
5)顯示eth0網卡的ip地址,經過ifconfig的命令結果進行過濾
awk 高級部分待續