日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

awk的命令是一種處理或分析文本文件的強大方法,特別是按行和列組織的數據文件。

可以從命令行運行簡單的awk命令。更復雜的任務應該作為awk程序(所謂的awk腳本)寫入文件。

awk命令的基本格式如下:

awk 'pattern {action}' input-file > output-file

這意味著:取輸入文件的每一行; 如果該行包含該模式,則將該操作應用于該行并將結果行寫入輸出文件。如果省略該模式,則該操作將應用于所有行。例如:

linuxidc@ubuntu:~/linuxidc.com$ awk '{ print $5 }' linuxidc.txt > linuxmi.txt

該語句獲取每行第5列的元素,并將其作為一行寫入輸出文件“output.txt”中。變量'$4'指的是第四列。類似地,您可以使用$1,$2,$3等訪問第一列,第二列和第三列。默認情況下,假定列由空格或制表符(所謂的空格)分隔。因此,如果輸入文件“linuxidc.txt”包含以下行:

1, linuxidc com, Title 599, Price $9.30

2, ninhao linuxidc, Title 761, Price $5.90

3, naike xie, Title 880, Price $9.10

4, Lady Gaga, Title 198, Price $1.30

5, Johnny Cash, Title 582, Price $6.50

6, Elvis Presley, Title 370, Price $9.30

7, John Lennon, Title 571, Price $8.90

8, Michael Jackson, Title 673, Price $7.50

9, linuxidc com, Title 585, Price $1.80

然后該命令將以下行寫入輸出文件“linuxmi.txt”:

linuxidc@ubuntu:~/linuxidc.com$ cat linuxmi.txt

599,

761,

880,

198,

582,

370,

571,

673,

585,

如果列分隔符不是空格或制表符(例如逗號),則可以在awk語句中指定,如下所示:

linuxidc@ubuntu:~/linuxidc.com$ awk -F, '{ print $3 }' linuxidc.txt > linuxmi.txt

如果認為列被逗號分隔,這將從每行的第3列中選擇元素。因此,在這種情況下,輸出將是:

linuxidc@ubuntu:~/linuxidc.com$ cat linuxmi.txt

Title 599

Title 761

Title 880

Title 198

Title 582

Title 370

Title 571

Title 673

Title 585

大括號內的語句列表('{','}')稱為塊。如果將條件表達式放在塊前面,則只有條件為真時才會執行塊內的語句。

awk '$7=="$7.30" { print $3 }' linuxidc.txt

在這種情況下,條件是$7=="$7.30",這意味著第7列的元素等于$7.30。美元符號前面的反斜杠用于阻止系統將$7解釋為變量,而是從字面上理解美元符號。

因此,這個awk語句打印出每行第3列的元素,第7列的“$7.30”。

您還可以使用正則表達式作為條件。例如:

linuxidc@ubuntu:~/linuxidc.com$ awk '$7=="$7.30" { print $3 }' linuxidc.txt

兩個斜杠('/')之間的字符串是正則表達式。在這種情況下,它只是字符串“30”。這意味著如果一行包含字符串“30”,系統將在該行的第3列打印出該元素。上例中的輸出將是:

linuxidc@ubuntu:~/linuxidc.com$ awk '/30/ { print $3 }' linuxidc.txt

com,

Gaga,

Presley,

如果表元素是數字,awk可以在它們上運行計算,如下例所示:

linuxidc@ubuntu:~/linuxidc.com$ awk '{ print ($2 * $3) + $7 }' linuxidc.com.txt

除了訪問當前行元素($1,$2等)的變量之外,還有變量$0表示完整行(行),變量NF表示字段數。

您還可以在此示例中定義新變量:

linuxidc@ubuntu:~/linuxidc.com$ awk '{ sum=0; for (col=1; col<=NF; col++) sum += $col; print sum; }' linuxidc.com.txt

這將計算并打印每行所有元素的總和。

awk語句經常與sed命令結合使用。

分享到:
標簽:命令 awk
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定