博客
关于我
linux下awk命令用法,打印符合条件的列,求和
阅读量:809 次
发布时间:2023-02-02

本文共 1180 字,大约阅读时间需要 3 分钟。

AWK命令简介

在Linux系统中,AWK是一种强大的文本分析工具,常常与grep和sed一起使用。与grep用于查找,sed用于编辑相比,AWK在进行数据分析时更为强大。AWK命令的基本原理是将输入流逐行读入,以空格或制表符(默认为空格)为分隔符,将每一行数据切片后进行处理。

AWK的版本

AWK有三个主要版本:AWK、nawk和gawk,其中gawk(GNU AWK)是最常用的版本。

使用方法

AWK命令的基本格式为:

awk '/pattern/{action}' {filename}'

其中,

  • /pattern 是用于匹配数据中特定内容的正则表达式,需要用单引号包裹。
  • {action} 是在匹配到内容时执行的操作指令,花括号{}用于将一系列命令分组。

例如,以下命令会查找文件名为以“.txt”结尾的文件,并打印出它们的完整路径:

gawk '/\.txt$/' /path/to/files/

AWK命令使用技巧

在使用AWK时,可以使用以下选项来指定分隔符和其他选项:

-A FILEVAL    将变量赋值给FILE  -F fs         将自定义分隔符fs指定为分隔符  -v var=value  将变量var赋值为指定的值  -p         在每行输入之前执行指定的命令  -t file    从文件中读取命令进行处理  ### AWK命令示例  以下是一些实际使用示例,帮助你更好地理解AWK的功能:  #### 1. 查找特定用户进程  我们可以使用AWK来查找系统中特定用户的进程。以下命令会查找名为“www”用户的最后10个进程:  ```bash  ps -ef | awk '/^www/{print $0}' | tail -n 10

2. 提取文件中的密码用户数量

以下命令会提取/etc/passwd文件中当前系统的密码用户数量:

cat /etc/passwd | awk -F ':' '{print $1}'

3. 计算网络映射后的端口数量

以下命令会计算seniz - dq 32988命令输出中,属于匿名用户的端口数量:

pmap -dq 32988 | awk -F ' ' '{sum += $2; "端口数量:" sum}'

AWK进阶应用

AWK的灵活性和强大功能,使其在日常Linux操作和数据处理中应用广泛。例如:

  • 数据处理:你可以使用AWK对数据进行复杂的计算和统计操作。
  • 文本处理:你可以将AWK与其他工具(如grep、sort等)结合使用,形成复杂的数据处理流程。
  • 脚本自动化:通过将AWK脚本与 Shell 脚本结合,你可以实现更复杂的自动化任务。

通过上述知识和示例,你应该已经对AWK有了初步的理解。随着进一步的实践,你会发现AWK在数据分析和处理中的无穷可能性。

转载地址:http://byzfk.baihongyu.com/

你可能感兴趣的文章
Nginx配置静态代理/静态资源映射时root与alias的区别,带前缀映射用alias
查看>>
Nginx面试三连问:Nginx如何工作?负载均衡策略有哪些?如何限流?
查看>>
nginx:/usr/src/fastdfs-nginx-module/src/common.c:21:25:致命错误:fdfs_define.h:没有那个文件或目录 #include
查看>>
Nginx:NginxConfig可视化配置工具安装
查看>>
ngModelController
查看>>
ngrok | 内网穿透,支持 HTTPS、国内访问、静态域名
查看>>
ngrok内网穿透可以实现资源共享吗?快解析更加简洁
查看>>
NHibernate学习[1]
查看>>
NHibernate异常:No persister for的解决办法
查看>>
NIFI1.21.0_java.net.SocketException:_Too many open files 打开的文件太多_实际操作---大数据之Nifi工作笔记0051
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_补充_更新时如果目标表中不存在记录就改为插入数据_Postgresql_Hbase也适用---大数据之Nifi工作笔记0059
查看>>
NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
查看>>
NIFI1.21.0_Postgresql和Mysql同时指定库_指定多表_全量同步到Mysql数据库以及Hbase数据库中---大数据之Nifi工作笔记0060
查看>>
NIFI1.21.0最新版本安装_连接phoenix_单机版_Https登录_什么都没改换了最新版本的NIFI可以连接了_气人_实现插入数据到Hbase_实际操作---大数据之Nifi工作笔记0050
查看>>
NIFI1.21.0最新版本安装_配置使用HTTP登录_默认是用HTTPS登录的_Https登录需要输入用户名密码_HTTP不需要---大数据之Nifi工作笔记0051
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增加修改实时同步_使用JsonPath及自定义Python脚本_03---大数据之Nifi工作笔记0055
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_插入修改删除增量数据实时同步_通过分页解决变更记录过大问题_01----大数据之Nifi工作笔记0053
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表或全表增量同步_实现指定整库同步_或指定数据表同步配置_04---大数据之Nifi工作笔记0056
查看>>