awk命令转载

查询一段时间内的日志

awk ‘{if ($1 <= “2015-12-21” && $1 >= “2015-12-18”) {print $0} }’ xxx.log | grep 关键字

过滤空白行 awk ‘NF’
过滤重复行 awk ‘!a[$0]++’
过滤掉最后两列 awk ‘NF-=2’
过滤掉从第一个匹配行到文件尾 awk ‘/匹配/{a=1}!a’
打印从第一个匹配行到文件尾 awk ‘/匹配/{a=1}a’ 或者 awk ‘/匹配/,0’
打印匹配行和下一行 awk ‘/匹配/{getline v;print $0"\n"v}’
打印匹配行和上一行 awk ‘/匹配/{print v"\n"$0}{v=$0}’
打印匹配行和上两行 awk ‘/匹配/{print a"\n"b"\n"$0}{a=b;b=$0}’
打印匹配的上一行 awk ‘/匹配/{print x}{x=$0}’
打印匹配的下一行 awk ‘/匹配/{getline;print}’
打印从第一个匹配A行至第一个匹配B行 awk ‘/匹配A/,/匹配B/’
仅过滤第一个匹配行 awk ‘/匹配/&&!a++{next}1’
两行合并成一行打印 awk ‘{printf NR%2?$0FS:$0RS}’
每3行插一行空行 awk ‘ORS=NR%3?"\n":"\n\n"’
打印奇数行 awk ‘a=!a’
打印偶数行 awk ‘!(a=!a)’
调换奇偶行打印 awk ‘BEGIN{OFS="\n"}{getline a;print a,$0}’
模拟 wc -l awk ‘END{print NR}’
打印单引号,print后边依次为:双引号单引号转义单引号单引号双引号 awk ‘BEGIN{print "’’’"}’
打印双引号,print后边依次为:双引号转义双引号双引号 awk ‘BEGIN{print “”"}’
以一个空行为每段文本的分割标准,统计每段文本的行数 awk ‘BEGIN{RS="";FS="\n"}{print NF}’
以一个空行为每段文本的分割标准,把一段文字整合成一行 awk -vRS="\n\n" -vOFS=" " ‘$1=$1’
列交换 awk ‘{a=$2;$2=$4;$4=a}1’
计算小数四舍五入 awk -F . ‘substr($2,0,1)>=5?a=$1+1:a=$1{print a}’
打印包含中文的行 awk ‘/[^!-~]/’
模拟tail -2 awk ‘{y=x “\n” $0; x=KaTeX parse error: Expected 'EOF', got '}' at position 2: 0}̲;END{print y}' …NF}END{print a}’
过滤file中的倒数第3、4行 awk -va=$(grep -c “” file) ‘(NR!=a-2&&NR!=a-3)’ file
只保留file的第一列(危险直接修改文件内容)awk ‘{print $1 > “file”}’ file
模拟date+%T awk ‘BEGIN{now=strftime("%T");print now}’

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值