天天看點

文本處理工具之awk1 Awk變量2 . Awk之printf格式化輸出3 Awk操作符 4 Awk pattern模型 5 Awk數組6 . Awk函數7Awk 中調用shell指令8 Awk 練習

Liunx 文本處理三劍客,grep,sed和awk,其中grep是一種文本過濾工具,sed是文本行編輯器,而awk是一種報表生成器,就是對檔案進行格式化處理的,這裡的格式化不是檔案系統的格式化,而是對檔案内容進行各種"排版",進行格式化顯示。

Awk各導圖分總結

1 Awk變量

文本處理工具之awk1 Awk變量2 . Awk之printf格式化輸出3 Awk操作符 4 Awk pattern模型 5 Awk數組6 . Awk函數7Awk 中調用shell指令8 Awk 練習

2 . Awk之printf格式化輸出

文本處理工具之awk1 Awk變量2 . Awk之printf格式化輸出3 Awk操作符 4 Awk pattern模型 5 Awk數組6 . Awk函數7Awk 中調用shell指令8 Awk 練習

3 Awk操作符

文本處理工具之awk1 Awk變量2 . Awk之printf格式化輸出3 Awk操作符 4 Awk pattern模型 5 Awk數組6 . Awk函數7Awk 中調用shell指令8 Awk 練習

4 Awk pattern模型

文本處理工具之awk1 Awk變量2 . Awk之printf格式化輸出3 Awk操作符 4 Awk pattern模型 5 Awk數組6 . Awk函數7Awk 中調用shell指令8 Awk 練習

5 Awk數組

文本處理工具之awk1 Awk變量2 . Awk之printf格式化輸出3 Awk操作符 4 Awk pattern模型 5 Awk數組6 . Awk函數7Awk 中調用shell指令8 Awk 練習

6 . Awk函數

文本處理工具之awk1 Awk變量2 . Awk之printf格式化輸出3 Awk操作符 4 Awk pattern模型 5 Awk數組6 . Awk函數7Awk 中調用shell指令8 Awk 練習

7Awk 中調用shell指令

文本處理工具之awk1 Awk變量2 . Awk之printf格式化輸出3 Awk操作符 4 Awk pattern模型 5 Awk數組6 . Awk函數7Awk 中調用shell指令8 Awk 練習

8 Awk 練習

(1)、統計/etc/fstab檔案中每個檔案系統類型出現的次數

awk '!/^#/{arr[$3]++}END{for(i in arr){print i,arr[i]}}' /etc/fstab
           

(2)、提取出字元串[email protected]%9&Bdh7dq+YVixp3vpw中的所有數字

echo "[email protected]%9&Bdh7dq+YVixp3vpw"|awk 'gsub(/[^0-9]/,"",$0)'
           

(3)、統計/etc/fstab檔案中每個單詞出現的次數

awk '{i=1;while(i<=NF){word[$i]++;i++}}END{for(num in word){print num,word[num]}}' /etc/fstab
           

(4)、計算男生女生的總成績,平均成績

cat 1.txt

mage    100    male

wang    80     male

zhang   70     female

li      100    female

awk '{if($3=="male"){msum+=$2;mnum++}else{fesum+=$2;fenum++}}END{printf "%-5d %-.2f\n%-5d %-.2f\n"
           

繼續閱讀