真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

awk命令詳解和實例-創(chuàng)新互聯(lián)

一.  AWK 說明

創(chuàng)新互聯(lián)建站專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、順義網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5頁面制作、商城系統(tǒng)網(wǎng)站開發(fā)、集團公司官網(wǎng)建設、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為順義等各大城市提供網(wǎng)站開發(fā)制作服務。

       awk是一種編程語言,用于在linux/unix下對文本和數(shù)據(jù)進行處理。數(shù)據(jù)可以來自標準輸入、一個或多個文件,或其它命令的輸出。它支持用戶自定義函數(shù)和動態(tài)正則表達式等先進功能,是linux/unix下的一個強大編程工具。它在命令行中使用,但更多是作為腳本來使用。

       awk的處理文本和數(shù)據(jù)的方式:它逐行掃描文件,從第一行到最后一行,尋找匹配的特定模式的行,并在這些行上進行你想要的操作。如果沒有指定處理動作,則把匹配的行顯示到標準輸出(屏幕),如果沒有指定模式,則所有被操作所指定的行都被處理。

       awk分別代表其作者姓氏的第一個字母。因為它的作者是三個人,分別是Alfred Aho、Brian Kernighan、Peter Weinberger。

       gawk是awk的GNU版本,它提供了Bell實驗室和GNU的一些擴展。下面介紹的awk是以GUN的gawk為例的,在linux系統(tǒng)中已把awk鏈接到gawk,所以下面全部以awk進行介紹。


二. awk命令格式和選項

2.1. awk的語法有兩種形式

       awk [options] 'script' var=value file(s)

       awk [options] -f scriptfile var=value file(s)

2.2. 命令選項

(1)-F fs or --field-separator fs :指定輸入文件折分隔符,fs是一個字符串或者是一個正則表達式,如-F:。

(2)-v var=value or --asign var=value :賦值一個用戶定義變量。

(3)-f scripfile or --file scriptfile :從腳本文件中讀取awk命令。

(4)-mf nnn and -mr nnn :對nnn值設置內(nèi)在限制,-mf選項限制分配給nnn的大塊數(shù)目;-mr選項限制記錄的大數(shù)目。這兩個功能是Bell實驗室版awk的擴展功能,在標準awk中不適用。

(5)-W compact or --compat, -W traditional or --traditional :在兼容模式下運行awk。所以gawk的行為和標準的awk完全一樣,所有的awk擴展都被忽略。

(6)-W copyleft or --copyleft, -W copyright or --copyright :打印簡短的版權信息。

(7)-W help or --help, -W usage or --usage :打印全部awk選項和每個選項的簡短說明。

(8)-W lint or --lint :打印不能向傳統(tǒng)unix平臺移植的結構的警告。

(9)-W lint-old or --lint-old :打印關于不能向傳統(tǒng)unix平臺移植的結構的警告。

(10)-W posix :打開兼容模式。但有以下限制,不識別:/x、函數(shù)關鍵字、func、換碼序列以及當fs是一個空格時,將新行作為一個域分隔符;操作符**和**=不能代替^和^=;fflush無效。

(11)-W re-interval or --re-inerval :允許間隔正則表達式的使用,參考(grep中的Posix字符類),如括號表達式[[:alpha:]]。

(12)-W source program-text or --source program-text :使用program-text作為源代碼,可與-f命令混用。

(13)-W version or --version :打印bug報告信息的版本。

14.特殊符號

| * + .


awk命令詳解和實例

例1:把2.txt的第三行分割打印出來

awk -F ':' '{print $3}' 2.txt (-F ':'固定格式  {print $3}打印的行數(shù))

awk命令詳解和實例awk命令詳解和實例

awk命令詳解和實例

例2:把2.txt的3,4,5行分割打印出來

awk -F ':' '{print $3,$4,$5}' 2.txt

awk命令詳解和實例

awk命令詳解和實例

例3:把2.txt的3,4,5行分割打印出來,并用":"來做分隔符

awk -F ':' 'OFS=":" {print $3,$4,$5}' 2.txt(OFS命令可以指定分隔符,分隔符可以:,*)

awk命令詳解和實例awk命令詳解和實例

例4:匹配2.txt中root的行

awk '/root/' 2.txt

awk命令詳解和實例

awk命令詳解和實例

例5:匹配2.txt中root和lizheng的行

awk '/root|lizheng/' 2.txt

awk命令詳解和實例awk命令詳解和實例

例6:匹配1.txt中s*d的行(可以多個s或者一個d的行)

* 匹配0個或多個字符

awk '/s*d/' 1.txt

awk命令詳解和實例awk命令詳解和實例

例6:匹配1.txt中s?d的行

?匹配0個或一個

awk '/s?d/' 1.txt

awk命令詳解和實例

awk命令詳解和實例

例7:匹配1.txt中s+d的行

+匹配1個或多個

awk '/s+d/' 1.txt

awk命令詳解和實例awk命令詳解和實例

例8:匹配1.txt中s.*d的行

.*匹配只要第一個是s,最后個是d都能匹配到

awk '/s.*d/' 1.txt

awk命令詳解和實例awk命令詳解和實例

例9:匹配1.txt中(ss)+的行

awk '/(ss)+/' 1.txt

awk命令詳解和實例awk命令詳解和實例

例10.匹配1.txt中第二段中s*d的行

awk -F ':' '$2~/s*d/' 1.txt

awk命令詳解和實例awk命令詳解和實例

例11.匹配1.txt中第二段中s*d的行,并只打印第二行的內(nèi)容

awk -F ':' '$2~/s*d/ {print $2}' 1.txt

awk命令詳解和實例

awk命令詳解和實例

例12.匹配1.txt中2個條件并打印出來(第一個條件是第一段中s*d的找出來并打印1和3段)

(第二個條件是第一種的匹配e的找出來并打印1和3段)(2個規(guī)則)

awk -F ':' '$1~/s*d/ {print $1,$3}; $1~/e/ {print $1,$3}' 1.txt(符合2個條件的輸出時會打印二次)

awk命令詳解和實例awk命令詳解和實例

例12:不匹配2.txt中nologin的行

awk -F ':' '$7!~/nologin/ ' 2.txt

awk命令詳解和實例awk命令詳解和實例

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


分享標題:awk命令詳解和實例-創(chuàng)新互聯(lián)
文章分享:http://weahome.cn/article/dodddj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部