awk處理之案例一:awk 處理百分比的問題


編譯環境

   本系列文章所提供的算法均在以下環境下編譯通過。

【腳本編譯環境】Federa 8,linux 2.6.35.6-45.fc14.i686
【處理器】 Intel(R) Core(TM)2 Quad CPU Q9400 @ 2.66GHz
【內存】 2025272 kB

前言

    awk是腳本中出色的文本處理工具。源碼好像也是用C語言寫的。本系列會針對不同的案例,用awk來解決我們所要的問題。 為什么會用awk呢?我們當然可以使用C語言或者java語言來對文本做處理,但每次都要編譯會令人發瘋的。修改起來也麻煩,正所謂殺雞焉用牛刀。而腳本的靈活便捷使得工作變得更加輕松容易。在shell腳本編程中,awk堪稱瑞士軍刀絕不為過。

    本系列文章均系筆者所寫,難免有一些錯誤或者紕漏,如果小伙伴們有好的建議或者更好的算法,請不吝賜教。

正文

【場景】

10.128.96.187: D:                    1.1T   86G  999G   8% /cygdrive/d
10.128.96.168: D:                    1.1T  782G  303G  73% /cygdrive/d
10.128.96.230: D:                    809G  169G  641G  21% /cygdrive/d
10.128.96.178: D:                    1.1T   66G 1020G   7% /cygdrive/d
10.128.96.195: D:                    1.1T  743G  342G  69% /cygdrive/d
10.128.96.196: D:                    1.1T  244G  841G  23% /cygdrive/d
10.128.96.181: D:                    1.1T  816G  270G  76% /cygdrive/d
10.128.96.184: D:                    1.9T  5.1G  1.9T   1% /cygdrive/d
10.128.96.185: D:                    1.9T  4.1G  1.9T   1% /cygdrive/d
10.128.96.191: D:                    1.1T   31G  1.1T   3% /cygdrive/d
10.128.96.194: D:                    1.1T  469G  616G  44% /cygdrive/d
10.128.96.214: D:                    1.1T  115G  970G  11% /cygdrive/d
10.128.98.165: D:                    251G  153G   98G  62% /cygdrive/d
10.128.96.174: D:                    1.1T  110G  975G  11% /cygdrive/d
10.128.96.193: D:                    1.1T   93G  993G   9% /cygdrive/d
10.128.96.221: D:                    816G   35G  781G   5% /cygdrive/d
10.128.96.186: D:                    1.1T  140G  946G  13% /cygdrive/d
10.128.96.169: D:                    1.1T  129G  957G  12% /cygdrive/d
10.128.96.229: D:                    809G  264G  546G  33% /cygdrive/d
10.128.96.183: D:                    1.1T  463G  623G  43% /cygdrive/d
10.128.96.171: D:                    1.1T  757G  328G  70% /cygdrive/d
10.128.96.190: D:                    1.1T  912G  174G  85% /cygdrive/d
10.128.96.209: d:                    523G  177G  347G  34% /cygdrive/d
10.128.96.208: d:                    523G   55G  468G  11% /cygdrive/d

   輸出百分數那部分大於等於70%的行到另外一個文件 morethan70.txt 把百分數的百分號去掉,變成一個數字,然后進行比較。

【代碼】

9

【解釋】

   -F 是以什么分割。[ %]+說一個以上空格或者百分號分隔。
那么第六個就是要比較的數字了。

作者

   出處:http://www.cnblogs.com/gina

   本文版權歸作者所有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM