news 2026/7/13 14:03:49

awk命令学习总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
awk命令学习总结

一、概述

awk是一个强大的文本分析工具,相对于grep的查找sed的编辑awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 awk 的 gnu版本。

awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 awk的确拥有自己的语言: AWK 程序设计语言 , 三位创建者已将它正式定义为“样式扫描和处理语言”。它允许创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。

awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令的输出(可能以管道的形式获取)。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk有很多内嵌的功能,比如数组、函数等,这是它和C语言的相同之处,灵活性是awk最大的优势。

二、语法形式

a)命令行方式

awk [options] 'script' var=value file(s)

awk [-F  field-separator]  'commands'  input-file(s)

其中,commands 是真正awk命令,[-F域分隔符]是可选的。 input-file(s) 是待处理的文件。在awk命令中,文件的每一行中,由域分隔符分开的每一项称为一个域。通常不指名-F域分隔符的情况下,默认的域分隔符是空格。

b)shell脚本方式

awk [options] -f scriptfile var=value file(s) 

将所有的awk命令插入到一个文件,并使awk程序可执行(该文件得有x可执行权限),然后awk命令解释器作为脚本的首行,一般通过键入脚本名称来调用。

相当于shell脚本首行的:#!/bin/sh,可以换成:#!/bin/awk

c) 将所有的awk命令插入一个单独文件,然后调用:

awk '{pattern + action}' {filenames}

awk -f awk-script-file input-file(s)

这里就是将所有的awk脚本插入到awk-script-file这个文件里,之后从中取出来执行。其中,-f选项加载awk-script-file中的awk脚本,input-file(s)是待处理的文件(会逐行读取其中的内容)。

三、常用命令选项

-F fs fs指定输入分隔符,fs可以是字符串或正则表达式,如-F:

-v var=value 赋值一个用户定义变量,将外部变量传递给awk

-f scripfile 从脚本文件中读取awk命令

-m[fr] val 对val值设置内在限制

<
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/13 12:16:55

破解APP同质化:在“复制风暴”中寻找破局之道

打开应用商店&#xff0c;搜索任意一个关键词&#xff0c;从“记账”到“健身”&#xff0c;从“修图”到“社交”&#xff0c;瞬间弹出几十款图标相似、名称雷同的APP。点开详情页&#xff0c;从界面布局到功能设置&#xff0c;仿佛都出自同一个模板。这已不是简单的市场竞争&…

作者头像 李华
网站建设 2026/7/9 21:00:59

为什么越来越多企业转向Open-AutoGLM?与LoadRunner的4大差异全披露

第一章&#xff1a;Open-AutoGLM兴起的背景与行业趋势随着大语言模型&#xff08;LLM&#xff09;在自然语言理解、代码生成和多模态任务中的广泛应用&#xff0c;企业对自动化机器学习流程的需求日益增长。Open-AutoGLM 的出现正是响应这一趋势的技术产物&#xff0c;旨在通过…

作者头像 李华
网站建设 2026/7/13 13:30:33

Open-AutoGLM报销提交提速80%:自动化流程你真的用对了吗?

第一章&#xff1a;Open-AutoGLM报销单据提交在企业自动化流程中&#xff0c;Open-AutoGLM 是一款基于大语言模型的智能报销处理系统&#xff0c;支持用户通过结构化方式提交报销单据。该系统能够自动识别票据类型、提取关键字段&#xff0c;并完成合规性校验。准备报销数据 提…

作者头像 李华
网站建设 2026/7/12 10:10:50

35、Windows 服务器性能监控与优化指南

Windows 服务器性能监控与优化指南 一、性能瓶颈概述 在服务器管理过程中,管理员常常会遇到服务器性能问题,这些问题可能并非由明显的硬件或服务故障引起。例如,用户可能会抱怨服务器在一天中的某些时段运行缓慢,或者在数周、数月内性能逐渐下降。这种情况下,服务器中存…

作者头像 李华
网站建设 2026/7/12 0:32:17

Open-AutoGLM考勤自动化实战指南(从环境搭建到每日自动签到)

第一章&#xff1a;Open-AutoGLM考勤自动化概述Open-AutoGLM 是一款基于大语言模型与自动化脚本集成的开源工具&#xff0c;专为解决企业日常考勤管理中的重复性任务而设计。它通过自然语言理解能力解析员工提交的出勤信息&#xff0c;并结合规则引擎自动完成打卡记录校验、异常…

作者头像 李华