博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
awk指令的使用
阅读量:5272 次
发布时间:2019-06-14

本文共 822 字,大约阅读时间需要 2 分钟。

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大
awk工作流程是这样的:读入有'\n'换行符分割的一条记录,然后将记录按指定的域分隔符划分域,填充域,$0则表示所有域,$1表示第一个域,$n表示第n个域。默认域分隔符是"空白键" 或 "[tab]键"
ARGC               命令行参数个数
ARGV               命令行参数排列
ENVIRON            支持队列中系统环境变量的使用
FILENAME           awk浏览的文件名
FNR                浏览文件的记录数
FS                 设置输入域分隔符,等价于命令行 -F选项
NF                 浏览记录的域的个数
NR                 已读的记录数
OFS                输出域分隔符
ORS                输出记录分隔符
RS                 控制记录分隔符
 

# 取出两个文件中相同的部分

awk 'NR==FNR{a[$0]=0;next}{if($0 in a){print $0}}' file1 file2

# 取出两个文件中不同的部分

awk 'NR==FNR{a[$0]=0;next}{if(!($0 in a)){print $0}}' file1 file2

# 计算nginx日志访问排名前10位的ip

awk '{a[$1]++}END{for(i in a) print a[i],i}' access.log | sort -rn | head -10

#统计各个科目的数量

# cat test.txtxqq 语文 数学xq 英语 语文x 数学 美术awk '{for(i=2;i<=NF;i++) a[$i]++}END{for(i in a) print i,a[i]}' test.txt

# 获取系统ip

ifconfig eth0 | awk 'NR==2{print $2}' |  cut -d: -f2

转载于:https://www.cnblogs.com/tangchuanyang/p/4157056.html

你可能感兴趣的文章
通过cookie验证用户登录
查看>>
2016012083+小学四则运算练习软件项目报告
查看>>
python操作MongoDB
查看>>
hdu 2444(染色法判断二分图+最大匹配)
查看>>
第三节,如何直观理解卷积神经网络的工作原理
查看>>
CentOS 7 下安装Nginx
查看>>
linux查看系统日志及具体服务日志
查看>>
CMake INSTALL 命令设置exe dll lib的安装位置
查看>>
Tensorflow学习笔记3:TensorBoard可视化学习
查看>>
看算法导论有感(1)——谈谈算法的五性对用户体验的影响
查看>>
postgresql 9.6 rc1发布
查看>>
[2017BUAA软工]个人阅读作业+总结
查看>>
统一通用文件上传、下载、预览、编辑组件设计
查看>>
第二阶段冲刺站立会议06
查看>>
Ptyhon基本语法
查看>>
Python__时间模块
查看>>
Python__subprocess模块
查看>>
苹果禁用UDID的后续
查看>>
如何转移 mysql 数据库,更换服务器之后mysql如何还原
查看>>
react 嵌套组件的通信
查看>>