首頁  >  文章  >  運維  >  Linux Shell程式設計的實例教程

Linux Shell程式設計的實例教程

PHP中文网
PHP中文网原創
2017-06-21 14:01:291692瀏覽
  • awk [-field-separator] 'commands' input-file(s)

基本模式

  • #awk -F':' ... 

使用#分隔

  • #awk '{print $0}' a.txt 

#列印全部

  • awk '{print $1,$3}' a.txt 

列印第1 、3列

  • awk 'BEGIN{print "0"}{print $1}' a.txt  

第一行列印0

  • awk '{print $1}END{print "0"}' a.txt 

最後一行列印0

  • ##awk '$1 == "0" {print $0}' a.txt 

#第一列等於0的行

  • awk '$1!="0" {print $0}' a.txt 

#第一列不等於0的行

  • awk '$1<=$2' 

第一列小於等於第二列的行

  • awk '$0!~/0 /' a.txt 

正規符合所有列不含0的行

  • awk '$1~/(12|(34)/ ' a.txt 

正規符合第一列符合12或34的行

  • awk 'if($1>1 && $2< ;1) {print $1} a.txt 

第一列大於1且第二列小於1的行的第一列

  • awk 'if($1>1 || $2<1) {print $2} a.txt 

第一列大於1或第二列小於1的行的第二列

  • awk '{print NF RS NR}' a.txt 

連續列印記錄列數、記錄分隔符號、已讀取記錄數

  • awk 'NR==FNR {print $1} NR>FNR {print $2}' a.txt b.txt 

列印第一個檔案的第一列和第二個檔案的第二列

  • awk '{$1=$1*2; print $1}' a.txt

修改數值列印

  • awk 'BEGIN{LAST=0} {if($1>LAST) print $1; LAST=$1}'

逐一比較列印遞增數列

  • awk '{total+=$1} END {print total}' a.txt

#統計列值

  • awk '{printf "%c", $1}' a.txt

格式化輸出

######awk '{print match($1, "1")}' a.txt############列印第一列第一個1的位置,沒有印出0############awk '{gsub(/ab/,"cd",$1); print $0}' a.txt########### #第一列字串替換############awk '{MAP[$1]=$2} END {for(I in MAP){print I, MAP[I]} }' a. txt############字典儲存與提取###

以上是Linux Shell程式設計的實例教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn