【Linux常用命令】之awk命令

Linux常用命令之awk命令

作者简介

听雨:一名在一线从事多年研发的程序员,从事网站后台开发,熟悉java技术栈,对前端技术也有研究,同时也是一名骑行爱好者。
Darren:一个工作经验用了N年的,资深划水人士,除了工作无其他爱好

口号:记录在开发中遇到日常问题、棘手问题的解法和思路

常用命令之awk

背景介绍

awk 命令由Alfred Aho、Peter Weinberger和Brian Kernighan三位开发的,其名称源自开发者姓氏的首字母。AWK不仅是一个命令,更是一种编程语言,专门用于处理和分析文本文件,对文本内容进行高效管理,awk、sed和grep并称为Linux系统中的文本三剑客。

常用参数

参数解释
-f从脚本中读取awk命令
-F设置输入时字段分隔符

内置变量

参数解释
NF浏览记录域的个数
RS控制记录分隔符

参考示例
awkfile.txt

root@master:~/temp/awk# cat awkfile.txt 
root:x:0:0:root:/root:/bin/bash rootspace
darren:x:1000:1000:darren:/home/darren:/bin/bash this is space
root@master:~/temp/awk# 

打印特定字段的值,注意观察和前面的值,默认分隔是空格

root@master:~/temp/awk# awk '{ print $1, $2 }' awkfile.txt
root:x:0:0:root:/root:/bin/bash rootspace
darren:x:1000:1000:darren:/home/darren:/bin/bash this

指定分隔符分隔,并打印出第一个分隔的值

root@master:~/temp/awk# awk -F : '{print $1}' awkfile.txt 
root
darren

按照指定分隔,第三行大于500的行

root@master:~/temp/awk# awk -F : '$3>500' awkfile.txt       
darren:x:1000:1000:darren:/home/darren:/bin/bash this is space
root@master:~/temp/awk#  

匹配带有root关键字的行

root@master:~/temp/awk# awk '/root/ {print}' awkfile.txt 
root:x:0:0:root:/root:/bin/bash rootspace
root@master:~/temp/awk# 

指定分隔符后打印最后一个值

root@master:~/temp/awk# awk -F : '{ print $NF }' awkfile.txt
/bin/bash rootspace
/bin/bash this is space
root@master:~/temp/awk# 

总结

awk是一个功能强大且灵活的文本处理工具,掌握awk命令能解决很多实际问题,从而提高工作效率,命令需要多使用并实践才能得心应手。

参考:《Linux常用命令自学手册》

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值