當前位置:首頁 » 編程軟體 » linuxshell腳本awk

linuxshell腳本awk

發布時間: 2025-10-13 03:14:47

linux shell 編程 awk -F/ 'OFS="/"{$NF="";print}'`這條腳本是什麼意思,今天在公司的一個腳本中看見!

-F/ 欄位分隔符設為/ 將輸入文本流分割為多個欄位進行處理
OFS="/" 設置輸出時的欄位分隔符為/
$NF="" 將最後一個欄位內容設置為空,即去除每行的最後一個欄位
最後通過print列印出來。

例如,一個文本內容為:
a/b/c/d/e
h/i/j/k/l/m

處理後的輸出內容為:
a/b/c/d/
h/i/j/k/l/

② linux shell中awk的用法

這個。。。太多了。如果在這里就能說清楚,那麼其本身功能的強大性就值得質疑。
只能推薦一些電子書(網上都可以找到)和學習鏈接給你:

Unix awk使用手冊(第二版).doc
Awk - An Introction and Tutorial.doc
詳解著名的awk_oneliner.pdf

通用線程: awk 實例:
https://www.ibm.com/developerworks/cn/linux/shell/awk/awk-1/

③ Linux shell awk怎麼去除行內,重復列

awk-F"[-,]"'{for(i=1;i<=NF;i++)a[$i,NR]++}{for(jina){split(j,b,SUBSEP);if(b[2]==NR)printfb[1]""}printf"
"}'關鍵詞.txt>去除重復後.txt

以此例測試通過。


關於awk二維數組的使用:

awk的多維數組在本質上是一維數組,更確切一點,awk在存儲上並不支持多維數組。awk提供了邏輯上模擬二維數組的訪問方式。例如,array[2,4] = 1這樣的訪問是允許的。awk使用一個特殊的字元串SUBSEP (34)作為分割欄位,在上面的例子中,關聯數組array存儲的鍵值實際上是2344。
類似一維數組的成員測試,多維數組可以使用if ( (i,j) in array)這樣的語法,但是下標必須放置在圓括弧中。
類似一維數組的循環訪問,多維數組使用for ( item in array )這樣的語法遍歷數組。與一維數組不同的是,多維數組必須使用split()函數來訪問單獨的下標分量。split ( item, subscr, SUBSEP)。

熱點內容
夢幻西遊手游怎麼用蘋果玩安卓 發布:2025-10-13 06:22:19 瀏覽:794
下面演算法 發布:2025-10-13 06:22:19 瀏覽:755
psd作圖突然無法存儲怎麼辦 發布:2025-10-13 06:15:53 瀏覽:209
插頁式文件夾頁 發布:2025-10-13 06:03:43 瀏覽:538
android定義枚舉 發布:2025-10-13 05:46:33 瀏覽:710
sqlite3編譯時如何處理 發布:2025-10-13 05:45:07 瀏覽:897
收銀主伺服器在什麼地方 發布:2025-10-13 05:44:18 瀏覽:855
學軟體編程好不 發布:2025-10-13 05:43:36 瀏覽:865
linuxudp數據接收數據 發布:2025-10-13 05:40:43 瀏覽:52
語言宏定義編譯 發布:2025-10-13 05:25:24 瀏覽:495