#linux awk command info
awk是乙個行編輯器 和sed是互補關係 主要功能是擷取,它類似於cut的功能,但是功能更強大
不單可以擷取還可以運算 排序 還支援shell語句等一些功能
awk語法
awk [option]''[filename]
awk 認為每一行都是一條記錄,記錄與記錄的預設分割符是回車
每一列是乙個字段,欄位與字段的預設分割符是空
awk 認為 每一條awk語句就是乙個指令碼 所以程式指令碼要用{}定義,由於awk命令列假定指令碼是單文字字串,所以必須將程式指令碼包括在單引號內。
#awk擷取
#nf number field 列擷取
print 輸出
$0 文字全部
$1-$n 輸出第幾個字段
$nf 輸出最後乙個字段
#行擷取 nr number row
如:awk 'nr==2' file
更改程式處理的優先順序 begin end 假如有多個程式
awk 資料字段和記錄變數
fs 指定輸入欄位的分割符 類似於命令選項 -f
ofs 指定輸出字段分割符
rs 指定輸入記錄分割符
ors 指定輸出記錄的分割符
fieldwidths 按寬度分割字段
如:awk 'begin'
awk 運算
+ - * / ^ % 賦值
如:awk 'begin'
如:計算記憶體使用率:
awk 'nr==1nr==2' /proc/meminfo
比較運算
> < >= <= == != 數字
對於字串
==精確匹配
~ 模糊匹配
!~
#awk 函式 if for while do-while
awk命令使用
awk是linux下很有用的列編輯工具。示例如下 檔案tran map.txt內容如下 tr zhuanzhang sa unknown 1.組織字串。將第一列以字串形式列印出來 awk tran map.txt tr sa 2.形成格式化 將第一列值轉換為第二列值 採用檔案指令碼方式。指令碼檔案為...
awk命令使用
awk 格式化輸出,報告生成器 格式 awk 選項 程式 檔案 選項 f 指定分隔符 space 多個分隔符 v 變數賦值內建變數 ofs 輸出字段分隔符 列 ofs rs 輸入行分隔符 ors 輸出行分隔符 nf 字段數量 列 nf 1 即倒數第二字段 nr 記錄數量 行 nr 4 即第四行 自定...
awk命令使用
awk 報告生成工具 把檔案中讀取到的每一行的每個字段分別進行格式化,而後進行顯示 awk new awk nawk gnu awk,gawk 用法格式 awk option script file awk option pattern file action print 1 模式 pattern ...