美文网首页Shell
shell awk基本使用

shell awk基本使用

作者: 不ji的石头 | 来源:发表于2021-12-06 19:38 被阅读0次
  • awk

1.介绍:

基于模式匹配检查输入文本,逐行处理并且输出

通常用在shell脚本中获取指定的数据

单独使用时,可以对文本数据做统计

2.基础语法

格式1:命令 | awk [选项] '[条件]{指令(多个指令可以用;分割)}'

格式2:awk [选项] '[条件]{指令}' 文件

例如:awk '{print 1,3}' fileName //打印fileName的所有行的第1和第3列,因为没有条件所有扫描所有行

awk内置变量

FS //保存或者设置字段分隔符,例如FS=":", 与-F功能一样

$n //第n列,n为0时表示整行

NF //记录当前处理行的字段个数(列数)

NR //记录当前已经读入行的数量(行数)

过滤时机:BEGIN{} {} END{}

3.常用选项

-F //可以指定分隔符(分割列),默认的分隔符为空格和Tab键。-F: 分隔符为:

4.条件表达式:

正则表达式

还可以匹配列,例如:awk -F: '3!~/bash/{print 1,7}' file //匹配第3列不是bash结尾的行 (~为匹配 !~为不匹配)

数值/字符比较

== != > >= < <= && | //例如:awk 'NR==2' file //打印行号为2的

5. awk流程控制语法:awk '{if(条件){条件满足执行}else{}}' //if必须在{}内

例如:awk '{if{NR==3}{print NR}else{print "hello"}}'

6. awk for循环:

例如:awk 'BEGIN{for(i=1;i<5;i++) {print i}}'

7. awk数组的定义与使用

定义:数组名[下标]=元素值 //下标可以为字母什么的,有点像map

调用:数组名[下标]

遍历:for(变量名 in 数组名){print 数组名[变量]} //无序打印

相关文章

  • shell awk基本使用

    awk 1.介绍: 基于模式匹配检查输入文本,逐行处理并且输出 通常用在shell脚本中获取指定的数据 单独使用时...

  • Linux命令之awk

    awk中使用shell命令awk '{cmd="rm "$0;system(cmd)}' filename.txt...

  • awk巩固扩展

    awk 中使用外部shell变量 选项-v可以实现使用外部变量。 如:A=44echo "ABCD" | awk ...

  • shell脚本案例(三)利用top命令精确监控cpu使用率

    需求:利用top命令精确监控CPU 准备知识:top使用、基本的awk、bc(默认bash shell不支持小数点...

  • shell对输出流的处理

    shell对输出流的处理awk介绍awk基本用法awk高级用法awk小技巧在日常计算机管理中,总会有很多数据输出到...

  • Shell中使用awk按列求和

    参考:Shell中如何按列求和? 使用awk按列求和

  • Linux Shell中使用awk完成两个文件的关联Join

    awk 处理两个公共字段 关键字:shell、awk、join Shell中的awk命令是非常强大的,有很多书籍专...

  • 常用命令(持续更新)

    处理文本常用单行命令,持续更新~1.awk 匹配两个文件内容### Linux Shell中使用awk完成两个文件...

  • awk 命令使用方法

    1. awk 擅长功能 awk 擅长对列进行操作/进行数据信息的统计(数组) awk 基本使用(高级使用-shel...

  • 复习

    复习 awk 中使用外部shell变量 awk的-v选项用于定义参数,有多少个变量需要赋值,就需要多少个-v选项。...

网友评论

    本文标题:shell awk基本使用

    本文链接:https://www.haomeiwen.com/subject/cqjnxrtx.html