awk 截取部分字符串_linux三剑客-awk

经常操作日志的小伙伴们对awk命令肯定不陌生,awk工具给我们分析日志提供了很便捷的操作,帮助我们完成统计和分析日志,也有很多小伙伴不会用到awk。awk作为一个强大的工具,对于我们工作能力和工作效率的提升,都有很多帮助,下面就让我们来领略一下awk的强大吧!

1.awk简介

awk适合文本处理和报表生成,在linux系统日常处理工作中,发挥了重要的作用,awk是三剑客的老大,利刃出销,必将不凡。

2.awk介绍

例如:awk '{print $0}' /etc/passwd

5cb7e624ad1cfabe0e89e9c7b497ef47.png

awk命令简单使用

解释:我们执行完上述命令之后,/etc/passwd文件的内容出现在眼前了。

在调用awk时,我们指定/etc/passwd为输入文件。执行awk时,会依次对/etc/passwd中的每一行执行print命令。所有输出都发送到stdout,所得到的结果和cat /etc/passwd相同。

再次强调:awk对输入文件中的每一行都执行这个脚本。

7feb16d5cbdcf0d6e142d0a64becc7de.png

简单说明

例如:awk -F ":" '{print $1}' /etc/passwd

8a64c9cc25ffbfaac8df846664797012.png

例如:awk -F ":" '{print $1 $3}' /etc/passwd

d116dbdb0b7f1627b3fa7064b6947643.png

例如:awk -F ":" '{print $1 " " $3}' /etc/passwd

9003985368283277ff3fb1d57e50e116.png

例如:awk -F ":" '{print "username:"$1 "uid:"$3}' /etc/passwd

ae8d0a4773ea92b195bd9788e6280b73.png

3.BEGIN和END模块

对于每个输入行,awk都会执行每个脚本代码块一次。然而,在很多情况下,可能需要在awk开始输入文件中的文本之前执行初始化代码。对于这种情况,awk允许您定义一个BEGIN块。awk在开始处理输入文件之前会执行BEGIN块,所以它是初始化FS(字段分隔符)变量、打印页眉或初始化其他在程序中以后会引用的全局变量的最佳位置。

awk还提供了END模块。awk在处理了输入文件中的所有行之后执行这个块。通常,END块用于执行最终计算或打印应该出现在输出流结尾的摘要信息。

4.运算符

ed5944e33d4a8c1f6aacf79c8a69a3fd.png
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值