linux awk使用方法
awk是一個強大的文字分析工具,相對於grep的查詢,sed的編輯,awk在其對資料分析並生成報告時,顯得尤為強大。簡單來說awk就是把檔案逐行的讀入,以空格為預設分隔符將每行切片,切開的部分再進行各種分析處理。 |
awk內建變數
ARGC 命令列引數個數 ARGV 命令列引數排列 ENVIRON 支援佇列中系統環境變數的使用 FILENAME awk瀏覽的檔名 FNR 瀏覽檔案的記錄數 FS 設定輸入域分隔符,等價於命令列 -F選項 NF 瀏覽記錄的域的個數 NR 已讀的記錄數 OFS 輸出域分隔符 ORS 輸出記錄分隔符 RS 控制記錄分隔符 $0變數是指整條記錄。$1表示當前行的第一個域,$2表示當前行的第二個域,......以此類推。 $NF是number finally,表示最後一列的資訊,跟變數NF是有區別的,變數NF統計的是每行列的總數
常用的命令展示
awk擅長列輸出
搜尋/etc/passwd有root關鍵字的所有行
awk '/root/' /etc/passwd
【這種是pattern的使用,匹配了pattern(這裡是root)的行才會執行action(沒有指定action,預設輸出每行的內容)】
搜尋/etc/passwd有root關鍵字的所有行,並顯示對應的
awk -F: '/root/ {print $7}' /etc/passwd
統計/etc/passwd:檔名,每行的行號,每行的列數,對應的完整行內容:
awk -F ':' '{print "filename:" FILENAME ",linenumber:" NR ",columns:" NF ",linecontent:"$0}' /etc/passwd
使用printf替代print,可以讓程式碼更加簡潔,易讀
awk -F: '{printf ("filename:%10s, linenumber:%3s,column:%3s,content:%3f\n",FILENAME,NR,NF,$0)}' /etc/passwd
列印/etc/passwd/的第二行資訊
awk -F: 'NR==2{print "filename: "FILENAME, $0}' /etc/passwd
awk的過濾使用方法
ls -lF | awk '/^d/'
指定特定的分隔符,查詢第一列
awk -F ":" '{print $1}' /etc/passwd
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2691081/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- linux之 awkLinux
- Linux-(awk)Linux
- linux之awkLinux
- linux的awk命令Linux
- Linux:“awk”命令的妙用Linux
- 【Linux篇】--awk的使用Linux
- Linux awk使用案例教程Linux
- Linux awk 命令詳解Linux
- Linux awk基礎筆記Linux筆記
- Linux中awk命令詳解Linux
- 技能篇:awk教程-linux命令Linux
- Linux awk 中 xxxx的應用Linux
- Linux——指令使用方法!Linux
- linux: awk 指定位置替換字元Linux字元
- linux系統awk命令使用詳解Linux
- Linux三劍客之awk詳解Linux
- 007 Linux 命令三劍客之-awkLinux
- Linux三劍客grep、awk和sedLinux
- linux dig 命令使用方法Linux
- Linux中最常用的一套“AWK“Linux
- Linux awk命令中如何刪除陣列Linux陣列
- Linux三劍客之awk入門指引Linux
- linux三劍客(grep、sed、awk)基本使用Linux
- Linux 中 ranger 的使用方法LinuxRanger
- Linux (三劍客之三) awk命令詳解Linux
- Linux命令之grep/sed/awk等行轉列Linux
- Linux檔案處理三劍客之awkLinux
- 程式猿必知必會Linux命令之awkLinux
- Linux 中 awk指令 sub和substr的區別Linux
- 【案例】Linux三劍客中awk命令如何使用?Linux
- 5分鐘帶你瞭解Linux awk命令!Linux
- Linux 三劍客 Awk、Sed、Grep 命令詳解Linux
- Linux三劍客Awk、Sed、Grep 命令詳解Linux
- awk
- [Linux Device Driver] wifi adb 使用方法LinuxdevWiFi
- 寶付揭秘Linux支付命令操作之grep、sed、awkLinux
- linux 中 awk語句 getline 和 enxt的區別Linux
- Linux 三劍客之 awk 實戰詳解教程Linux