linux文本分析工具awk解读
生活随笔
收集整理的這篇文章主要介紹了
linux文本分析工具awk解读
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
? ? ? ? awk是一個強大的文本分析工具,相對于grep的查找、sed的編輯,awk在其對數據分析并生成報告時,顯得尤為強大。awk把文件逐行的讀入,以空格為默認分隔符將每行切片,切開的部分再進行各種分析處理。顯然awk適用于文件中的每行都被特定的分隔符隔開,文件是一個行列矩陣。
語法
awk [選項參數] 'script' var=value file(s) 或 awk [選項參數] -f scriptfile var=value file(s)選項參數說明:
?awk --help 用法: awk [POSIX 或 GNU 風格選項] -f 腳本文件 [--] 文件 ... 用法: awk [POSIX 或 GNU 風格選項] [--] '程序' 文件 ... POSIX 選項: ? ? ? ? ? ? ? ? ? ? GNU 長選項:-f 腳本文件 ? ? ? ? ? ? --file=腳本文件-F fs ? ? ? ? ? ? ? ? ? --field-separator=fs-v var=val ? ? ? ? ? ? ?--assign=var=val-m[fr] val-O ? ? ? ? ? ? ? ? ? ? ?--optimize-W compat ? ? ? ? ? ? ? --compat-W copyleft ? ? ? ? ? ? --copyleft-W copyright ? ? ? ? ? ?--copyright-W dump-variables[=file] ? ? ? ?--dump-variables[=file]-W exec=file ? ? ? ? ? ?--exec=file-W gen-po ? ? ? ? ? ? ? --gen-po-W help ? ? ? ? ? ? ? ? --help-W lint[=fatal] ? ? ? ? --lint[=fatal]-W lint-old ? ? ? ? ? ? --lint-old-W non-decimal-data ? ? --non-decimal-data-W profile[=file] ? ? ? --profile[=file]-W posix ? ? ? ? ? ? ? ?--posix-W re-interval ? ? ? ? ?--re-interval-W source=program-text ?--source=program-text-W traditional ? ? ? ? ?--traditional-W usage ? ? ? ? ? ? ? ?--usage-W use-lc-numeric ? ? ? --use-lc-numeric-W version ? ? ? ? ? ? ?--version運算符
| = += -= *= /= %= ^= **= | 賦值 |
| ?: | C條件表達式 |
| || | 邏輯或 |
| && | 邏輯與 |
| ~ ~! | 匹配正則表達式和不匹配正則表達式 |
| < <= > >= != == | 關系運算符 |
| 空格 | 連接 |
| + - | 加,減 |
| * / % | 乘,除與求余 |
| + - ! | 一元加,減和邏輯非 |
| ^ *** | 求冪 |
| ++ -- | 增加或減少,作為前綴或后綴 |
| $ | 字段引用 |
| in | 數組成員 |
官網參考:https://www.gnu.org/software/gawk/manual/gawk.html
參考:http://www.cnblogs.com/wangqiguo/p/5863266.html
? ? ? ? ? ?http://www.runoob.com/linux/linux-comm-awk.html
基本用法練習:
1)輸出第一列和第四列:
awk '{print $1,$4}' train_features_p.txt2)過濾第一列大于2且第二列等于3:
awk '$1>2 && $2=="3" {print $1,$2,$3}' train_features_p.txt更多強大的內置函數和變量,有需要可以通過參考加以應用,可以作為大數據平臺輔助的數據處理。
如果要實現(xiàn)從文檔中提取滿足條件的行數,可以如下:
cat all.txt|awk '{if(($1>0.5)) {print $1}}' > 1.txt這個命令就把all.txt中第一列大于0.5的記錄輸出1.txt中再通過wc -l 1.txt就可以得到有多少行。
總結
以上是生活随笔為你收集整理的linux文本分析工具awk解读的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: eclipse卸载插件小记
- 下一篇: linux命令wc解读