linux文本分析工具awk解读
程序员文章站
2024-02-24 11:11:52
...
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.txt
2)过滤第一列大于2且第二列等于3:
awk '$1>2 && $2=="3" {print $1,$2,$3}' train_features_p.txt
更多强大的内置函数和变量,有需要可以通过参考加以应用,可以作为大数据平台辅助的数据处理。
如果要实现从文档中提取满足条件的行数,可以如下:
cat all.txt|awk '{if(($1>0.5)) {print $1}}' > 1.txt
这个命令就把all.txt中第一列大于0.5的记录输出1.txt中
再通过wc -l 1.txt就可以得到有多少行。
推荐阅读
-
Shell处理文本时常用的工具(find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk)
-
linux文本分析工具awk解读
-
使用shell命令查看分析日志 博客分类: linux命令shell 日志分析shell命令awk
-
linux 常用 文本 命令 博客分类: linux grep awk linux awk grep
-
linux 常用 文本 命令 博客分类: linux grep awk linux awk grep
-
linux命令大全之grep命令详解(文本搜索工具)
-
用 db2pd 工具分析 DB2 for Linux,UNIX,and Windows 中锁的等
-
Linux 系统性能分析工具 sar
-
分享一个以前做的东西,linux性能监控分析工具
-
Linux基础篇学习——vi,vim交互式文本编辑工具