前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >awk命令

awk命令

作者头像
WindrunnerMax
修改2020-10-21 10:51:20
7600
修改2020-10-21 10:51:20
举报
文章被收录于专栏:Czy‘s BlogCzy‘s BlogCzy‘s Blog

awk命令

Awk是一种用于高级文本处理的通用脚本语言,其主要用作报告和分析工具,与大多数其他程序性编程语言不同,Awk是数据驱动的,也就是说需要定义一组针对输入文本要执行的操作,然后其获取输入数据,对其进行转换,然后将结果发送到标准输出。

语法

awk [ -F fs ] [ -v var=value ] [ 'prog' | -f progfile ] [ file ... ]

参数

  • -F fs: 将输入字段分隔符设置为正则表达式fs
  • -v var=value: 在执行awk程序之前,将值赋值给变量var
  • 'prog': awk程序。
  • -f progfile: 指定文件progfile,其中包含要执行的awk程序。
  • file ...: 由指定的awk程序处理的文件。

示例

示例文件example.txt文件内容如下:

Bucks Milwaukee    60 22 0.732 
Raptors Toronto    55 24 0.707 
76ers Philadelphia 51 31 0.622
Celtics Boston     33 33 0.598
Pacers Indiana     30 34 0.585

输出example.txt的第3个字段。

awk '{ print $3 }' example.txt
# 60
# 55
# 51
# 33
# 30

使用正则表达式匹配出以R开头的组。

awk '/^R/ { print $1,$2,$3,$4 }' example.txt
# Raptors Toronto 55 24

使用BEGIN以及END输出在处理记录之前与之后执行的操作,处理过程为输出第二个字段包含Tor的组。

awk 'BEGIN { print "Start Processing" }; $2 ~ /Tor/ {print $1,$2,$3,$4 }; END { print "End Processing" }' example.txt
# Start Processing
# Raptors Toronto 55 24
# End Processing

每日一题

https://github.com/WindrunnerMax/EveryDay

参考

https://linuxize.com/post/awk-command/

https://www.computerhope.com/unix/uawk.htm

https://www.runoob.com/linux/linux-comm-awk.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-10-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • awk命令
    • 语法
      • 参数
        • 示例
          • 每日一题
            • 参考
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档