最近寫的腳本比較多 在shell腳本中 經常會用到awk和sed
比如我們要獲取網卡地址IP 和 端口
輸入ifconfig
然後看到 很多信息 我們要取得 ip地址
ifconfig | grep inet 先篩選 inet匹配的內容
結果如下
我們要選出 第三列 就可以用awk來篩選
ifconfig | grep inet |awk -F: '!/0.0.0/{print $3}'
然後我們就刪除掉了 255.0.0.0這行了 剩下只有一行了
接下來最後一步
再添加個awk
ifconfig | grep inet |awk -F: '!/0.0.0/{print $3}' | awk '{print $1}'
完成操作
awk在實際應用中 操作文件 比較多
格式爲
awk'{pattern + action}' {filenames}
awk裏面的內置變量 NR 行數 FNR文件記錄數 可以看awk手冊
awk編程 裏面的if 條件語句和 for循環 跟C語言裏面一樣 十分方便
pattern 中 BEGIN和END BEGIN主要是用來初始化變量 END用來做掃尾工作