佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > linux awk高級(jí)應(yīng)用實(shí)例

linux awk高級(jí)應(yīng)用實(shí)例

熱門(mén)標(biāo)簽:服務(wù)外包 地方門(mén)戶網(wǎng)站 鐵路電話系統(tǒng) AI電銷(xiāo) 網(wǎng)站排名優(yōu)化 百度競(jìng)價(jià)排名 Linux服務(wù)器 呼叫中心市場(chǎng)需求

今天看到unix shell 范例精解上有道awk的題目 做了以后拿來(lái)和大家分享下

處理前的文檔:

 Mike Harrington:(510) 548-1278:250:100:175
 Christian Dobbins:(408) 538-2358:155:90:201
 Susan Dalsass:(206) 654-6279:250:60:50
 Archie McNichol:(206) 548-1348:250:100:175
 Jody Savage:(206) 548-1278:15:188:150
 Guy Quigley:(916) 343-6410:250:100:175
 Dan Savage:(406) 298-7744:450:300:275
 Nancy McNeil:(206) 548-1278:250:80:75
 John Goldenrod:(916) 348-4278:250:100:175
 Chet Main:(510) 548-5258:50:95:135
 Tom Savage:(408) 926-3456:250:168:200
 Elizabeth Stachelin:(916) 440-1763:175:75:300

需要的結(jié)果如下:
                ***CAMPAIGN 1998 CONTRIBUTIONS***

Name                   PHone                   Jan |   Feb |   MAR |   Total Donated
---------------------------------------------------------------------------------
 
Mike Harrington         (510) 548-1278          250     100     175     525
Christian Dobbs         (408) 538-2358          155     90      201     446
Susan Dalsass           (206) 654-6279          250     60      50      360
Archie McNichol         (206) 548-1348          250     100     175     525
Jody Savage             (206) 548-1278          15      188     150     353
Guy Quigley             (916) 343-6410          250     100     175     525
Dan Savage              (406) 298-7744          450     300     275     1025
Nancy McNeil            (206) 548-1278          250     80      75      405
John Goldenrod          (916) 348-4278          250     100     175     525
Chet Main               (510) 548-5258          50      95      135     280
Tom Savage              (408) 926-3456          250     168     200     618
Elibeth Stachel         (916) 440-1763          175     75      300     550

 SUMMARY
-----------------------------------------------------------------------------------
The campan received atotal of $6137 for this quarter
average donation for the 12 contributors was $511.417.
The highest contribution was $450.
The lowest contribution was $15.

代碼如下:

BEGIN{FS=":";low1=300;low2=400;low3=500
    OFS="\t"
    print "\t\t***CAMPAIGN 1998 CONTRIBUTIONS***\n"
    print "---------------------------------------------------------------------------------\n"
    print " Name\t\t\tPHone\t\t\tJan |\tFeb |\tMAR |\tTotal Donated"
    print "---------------------------------------------------------------------------------\n"
    }
 
{tot=$3+$4+$5}
{Ttot+=tot}
{print $1,"\t"$2"\t\t"$3" \t"$4" \t"$5" \t"tot}
{avg=Ttot/12}
{high1=(high1>$3)?high1:$3}
{high2=(high1>$4)?high1:$4}
{high3=(high1>$5)?high1:$5}
{max12=(high1>high2)?high1:high2}
{max23=(high2>high3)?high2:high3}
{Max=(max12>max23)?max12:max23}
{low1=(low1$3)?low1:$3}
{low2=(low1$4)?low1:$4}
{low3=(low1$5)?low1:$5}
{min12=(low1low2)?low1:low2}
{min23=(low2low3)?low2:low3}
{Min=(min12min23)?min12:min23}
 
END{
    print "-----------------------------------------------------------------------------------"
    print"\t\tSUMMARY"
    print "-----------------------------------------------------------------------------------"
    printf "The campan received atotal of $";printf Ttot; print " for this quarter"
    printf "average donation for the 12 contributors was $"; printf avg ;print"."
    printf "The highest contribution was $";printf Max;print "."
    printf "The lowest contribution was $";printf Min;print "." 
}
您可能感興趣的文章:
  • Linux里awk中split函數(shù)的用法小結(jié)
  • linux正則表達(dá)式awk詳解
  • 一天一個(gè)shell命令 linux文本內(nèi)容操作系列-awk命令詳解
  • Linux中 sed 和 awk的用法詳解
  • linux awk時(shí)間計(jì)算腳本及awk命令詳解
  • linux shell awk獲得外部變量(變量傳值)簡(jiǎn)介
  • linux之a(chǎn)wk命令的用法
  • Linux awk將文件某列按照逗號(hào)分隔的例子
  • Linux中awk的使用方法詳解

標(biāo)簽:蘭州 銅川 衡水 湘潭 仙桃 黃山 崇左 湖南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《linux awk高級(jí)應(yīng)用實(shí)例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    河曲县| 青岛市| 康定县| 台前县| 沁源县| 怀远县| 桃江县| 富宁县| 织金县| 云梦县| 邵阳县| 陇西县| 青神县| 枣庄市| 台中市| 吴江市| 牙克石市| 香港| 长岛县| 吴忠市| 咸宁市| 富源县| 九台市| 当雄县| 黔西| 开化县| 花莲县| 青海省| 江孜县| 新丰县| 额尔古纳市| 金阳县| 廊坊市| 共和县| 旬阳县| 平远县| 怀化市| 大竹县| 黄平县| 盐津县| 鄂伦春自治旗|