awk

awk命令的常用功能:
(1)指定分隔显示某几列。
例子: awk -F "GET|HTTP" '{print $2}' a.log 直接取出显示出日志文件的url之列。
(2)通过正则表达式取出想要的内容。
例子:awk '$6~/Failed/{print $11}' /var/log/secure 分析生产环境中的日志找出谁在破解用户的密码。
(3)显示出某个范围内的内容。
例子:awk 'NR==20,NR==30' filename 显示文件的20到30行。
(4)通过awk进行统计计算。
例子:awk '{sum+=$0} END {print sum}' ett.log 计算总和。
(5)awk数组计算与去重。
例子:awk '{array[$1]++} END {for(key in array) print key,array [key]}' a.log  对日志进行统计与计数。
 
参数选项:
-F  指定字段分隔符。
-v  定义或修改一个awk内容的变量。
 
显示文件的第5行
 
显示文件的第2-6行
 
给文件每行的内容之前加上行号,显示与 cat -n a.log 同样的功能。
 
显示文件的第2行到第6行并打印行号
 
显示文件的第1列,第3列和最后一列
 
把文件中的 /sbin/nologin 替换为  /bin/bash
 
原文地址:https://www.cnblogs.com/liang545621/p/9416628.html