AWK快速入门

COMSOL电磁仿真-网格剖分-边界层 介绍COMSOL在低频电磁场中边界层网格的剖分方法。 阅读详情

1. AWK程序结构

创建一个文件名为emp.data的文件,用vim编辑如下内容
Beth 4.00 0
Dan 3.75 0
Kathy 4.00 10
Mark 5.00 20
Mary 5.50 22
Susie 4.25 18

每列分别为名字,时薪,工时。
如果想打印每个雇员的名字和他们的薪酬

[~]awk '$3>0{print$1,$2*$3}' emp.data
Kathy 40
Mark 100
Mary 121
Susie 76.5

这个命令会告诉操作系统运行AWK程序,被运行的程序用单引号包围,从输入文件emp.data获取数据。被单引号包围的部分是一个完整是awk程序,它由一个单独的模式-动作语句(pattern-action)组成。模式$3>0匹配每一行输入,如果该行的第三列(或者说字段(filed)大于0),则动作
   {print $1,$2*$3}
显示第1列名字及第2列和第3列的乘积。

如果你想看哪个员工在偷懒,可以执行awk程序awk'$3==0 print{$1}' emp.data
awk的模式与动作可以省略其一,但不能两者都省略,如果一个模式没有动作,例如:

awk '$3==0' emp.data

会将每一个匹配行打印出来。这个程序将我呢件emp.data中第3个字段为0的两行打印出来:

Beth     4.00     0
Dan      3.75     0

如果只有动作没有模式,例如

awk '{print $1}' emp.data

Beth
Dan
Kathy
Mark
Mary
Susie

对于每一个输入行,动作(这个例子里是打印第一个字段)都会被执行。

    因为模式和动作都是可选的所以用花括号将动作括起来,以便区分两者。

2.运行AWK程序

运行awk程序有多种方式,举几个例子:
    awk ‘program’ inputfile
这个命令对指定的输入文件的每一行,执行program.
Ex:
    awk '$3==0 {print $1}' file1 file2
打印文件file1和file2de 每一行的第一个字段(条件是该行的第3个字段为0)
另外你也可以在命令行上省略输入文件,
   awk '$3==0 {print $1}' 这种情况下,awk会将program应用到你接下来在终端输入的内容上面,知道你键入一个文件结束标志(Unix系统组合键control-d)
Ex:

awk '$3==0 {print $1}'

Beth 4.00 0
Beth

这种行为对测试awk程序来说非常方便:键入程序与数据,检查程序的输出。
当程序的长度比较短时(只有几行)吗,这种安排会比较方便。如果程序比较长,更好的做法是将它们放在一个单独的文件中,如果文件名师profile的话,运行时只要键入
awk -f profile optionallist of files

选项-f告诉awk从文件中提取程序,在profile出现的地方可以是任意的文件名。

3.错误

    如果你在awk程序犯了一个错误,awk会显示一个诊断信息。例如,你打错了一个花括号,就像这样

awk '$3==0 [print $1 }' emp.data
错误告警如下:
这里写图片描述

   ”Syntax error”意味着你犯了一个语法错误,错误的地方会备用>>> <<<标记。“Bailing out”意味着无法修复。

   由于发生了语法错误,awk不会尝试执行这个程序,然后有写错误知道运行时才会被检测到。例如,你的程序尝试用0作除数,这时候awk会停止处理,然后报告错误所在位置。

别再手动找触点了!EPLAN线圈触点映像的3种显示方式与F键/Ctrl+B快捷键实战 本文详细解析EPLAN线圈触点映像的3种显示方式与F键/Ctrl+B快捷键实战技巧,帮助电气设计工程师提升图纸操作效率。通过精简编号、路径栏显示和元件旁可视化三种模式的应用场景对比,结合快捷键肌肉记忆训练法,实现触点快速定位与管理,大幅减少手动查找时间。 阅读详情

相关推荐

YOLOv5改进——添加SimAM注意力机制

这样可以使注意力机制看到整个backbone部分的特征图,将具有全局视野,类似于一个小的transformer结构。注意:很多改进教程都是将代码直接复制到common.py文件,如果改进机制多了容易造成混乱。在models文件夹下新建modules文件夹,在modules文件夹下新建一个py文件。这里为simam.py。在models文件夹下,复制yolov5s.yaml文件,粘贴并重命名为yolov5s-simam.yaml。运行yolo.py,出现刚刚加入的SimAM注意力机制,说明加入成功。

2302_80099075的博客 1653

AWK编程

{ names = names $1 " "}END { print names } 通过将每个姓名和一个空格附加到变量 names 的前一个值, 来将所有员工的姓名收集进单个字符串中。最后 END 动作打印出 names 的值::Beth Dan Kathy Mark Mary Susie awk程序中,连接操作的表现形式是将字符串值一个接一个地写出来。对于每个输入行,程序的第一个语句先连接

n8765的专栏 971

在PLC中将十六进制数据转换为浮点数(通常遵循IEEE 754标准)需要理解数据存储格式,并按以下步骤操作:

通过以上步骤,您可以在PLC中实现十六进制到浮点数的转换。T DBD20 // 将数据传送到浮点数变量(如DB1.DBD20)指数位(8位):实际指数 = 存储值 - 127(偏移量)。:必须确认PLC的存储顺序(大端或小端),否则结果错误。将两个16位寄存器合并为32位数据,需注意。尾数位(23位):隐含前导1,实际值为。:确保32位数据在寄存器中连续且对齐。符号位(1位):0表示正,1表示负。:高位寄存器在前(如西门子PLC)。:低位寄存器在前(如三菱FX系列)。,误差因截断导致)。

K11mvp的博客 4416

shell脚本编程之awk入门

awk是一个基于列的文本处理工具,另外还有一个基于行模式的sed,本文简要介绍awk的基本使用 示例 awk按行读取文本并视为一条记录,每条记录以字段分割成若干字段,然后输出各字段的值。分割方式默认是按“空白字符”,包括空格、Tab,每个非空白区域称为一个域,从左到右编号为1,2,3…,分别用$1,$2,…,$n表示,$0表示所有域。例如有如下文本a.txt: BeiJing 北京 0000-...

qq_24395625的博客 480

【AI Infra】Perfetto性能分析工具指南

Perfetto是一款开源性能分析工具,提供系统级和应用级的活动数据追踪功能。其界面分为四个区域:左侧操作区(包含Trace查看、SQL查询、预置分析等功能)、上方信息区、中间图形化展示区以及下方详细信息区。工具支持快捷键操作(w/s缩放、a/d移动、m标记等),并能高效处理大体积Trace文件。通过Timeline分析可发现性能瓶颈,如案例中update_actor耗时过高的问题,最终定位到CPU offloading导致的MemcpyH2D操作耗时过长,提出了优化方案。Perfetto相比Systrac

baiweizeng的博客 1503

Windows 下安装 ros2 的超详细教程

Windows11 ROS安装

2401_83363439的博客 3316

awk

awk认知 awk 执行模式 所需文件: 1.pattern { action } $3 == 0 { print $1 } //awk '$3 >0 { print $1, $2 * $3 }' emp.data //awk '$3 == 0 { print $1 }' file1 file2 基础输出print,字段数量...

diaohuqiao7206的博客 200

BP神经网络回归预测+SHAP可解释分析+新数据预测(MATLAB完整源码)

BP神经网络回归预测+SHAP可解释分析+新数据预测(MATLAB完整源码)

机器学习之心的博客,关注并私信文章链接,获取对应文章源码和数据。 390

AWK 简明教程

有一些网友看了前两天的《Linux下应该知道的技巧》希望我能教教他们用awk和sed,所以,出现了这篇文章。我估计这些80后的年轻朋友可能对awk/sed这类上古神器有点陌生了,所以需要我这个老家伙来炒炒冷饭。况且,AWK是贝尔实验室1977年搞出来的文本出现神器,今年是蛇年,是AWK的本命年,而且年纪和我相仿,所以非常有必要为他写篇文章。 之所以叫AWK是因为其取了三位创始人 Alfred

千城 1260

Android USB串口通信详解与实例

在Android开发中,USB串口通信是一个常见的需求,尤其是在与硬件设备进行交互时。通过USB串口,我们可以轻松地实现数据的发送与接收。本文将详细介绍如何使用库来实现Android设备与USB串口设备的通信。

m0_62153576的博客 677

2025华为od面试手撕代码【求字符串表达式结果】

2025华为od面试手撕代码【求字符串表达式结果】

MISAYAONE的博客 1348

awk笔记

awk笔记 awk其实是一门编程语言,它支持条件判断、数组、循环等功能。所以,我们也可以把awk理解成一个脚本语言解释器。 grep、sed、awk被称为Linux中的“三剑客” grep:更适合单纯的查找或匹配文本 sed:更适合编辑匹配到文本 awk:更适合格式化文本,对文本进行较复杂格式处理 awk基础 基本语法:awk [options] ‘program’ file1 , file2 … $ $num:标识第几列 $0:标识一整行 $NF:标识最后一列 注意:$1这种内置变量的外侧不能加入双引号,

Doudou_4174的博客 881

对接金蝶云星空调用即时库存信息查询API(附JAVA实现)

这篇文章教你如何对接金蝶API并且使用JAVA调用金蝶云星空的即时库存查询API

实用的博客 2608

awk快速入门

AWK快速入门 awk简介 awk是一个优良的文本处理工具,是Linux中文本三剑客之一,awk的名字取自于其创始人Alfred Aho、Peter Weinberger和Brain Kernighan三人姓式的首字母。 awk的功能及其强大,可以进行式样装入、流控制、数学运算符、进程控制语句甚至内置的变量和函数,他具备了一个完整语言所应有的几乎所有特性。 awk语法 awk程序由BEG...

weixin_33758863的博客 322

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

linux awk快速入门

aw快速入门 简介 awk 是linux下的一种编程语言,用于处理linux下的文本和数据。其输入可以是标准输入、文件等。支持正则表达式,顺序结构和分支结构等。在linux/unix操作系统下,awk是一个非常强大而快速的文件处理工具,基本上用一行命令便可以完成别的变成语言几十行甚至上百行代码的功能。其处理文件时是一行一行读入,逐行处理,功能强大、快速且不占用太多内存。awk内部还可以实现数组

guanghaoli的博客 457

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

AWK入门到精通系列——awk快速入门

AWK入门到精通系列——awk快速入门

lzbshaaa的博客 1901

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

awk语言快速入门笔记

awk语言快速入门

oracle_drower的博客 828

awk -f 分隔符 命令_awk 命令快速入门

awk 是一个强大的文本分析工具,可以非常方便地处理每行都是相同格式的文本,是Linux中功能强大的数据处理引擎之一。算法集市:grep命令快速入门​zhuanlan.zhihu.com算法集市:sed 命令快速入门​zhuanlan.zhihu.com前面两篇分别示例了 grep/sed 的用法,这篇介绍 awk 的用法。Linux 文本操作的三大神器:grep、sed、awk,各自的最佳应用场...

weixin_39953236的博客 8395

【Linux学习】AWK 快速入门

awk快速实用入门

Zachary_Franklin的博客 215

awk 分隔符_awk 命令快速入门

awk 是一个强大的文本分析工具,可以非常方便地处理每行都是相同格式的文本,是Linux中功能强大的数据处理引擎之一。grep命令快速入门sed 命令快速入门前面两篇分别示例了 grep/sed 的用法,这篇介绍 awk 的用法。Linux 文本操作的三大神器:grep、sed、awk,各自的最佳应用场景:grep:使用正则表达式搜索文本,并把匹配的行打印出来,是强大的文本搜索工具;sed:用于编...

weixin_39653761的博客 2934

AWK工具快速入门

AWK是一个特定领域的语言被用于文本处理,并且被用于典型的数据提取和报告工具。和sed,grep一样,它是一个过滤器,并且它是大多数Unix-like操作系统的标准特性。AWK语言是一种数据驱动的脚本语言,由一系列的操作组成,这些操作被用于应对文本数据的流或者是被用于文件或者管道中。它的目的是为了提取和转换文本。比如生成格式化的报告。关联数组以及使用了正则化表达式。

qq_46130027的博客 200

awk 快速入门教程

文章目录开始AWK 程序的结构规则介绍☆模式(匹配)1. 表达式2. 正则表达式3. BEGIN4. END5. 复合模式6. 范围模式☆动作内建变量 NF内建变量 NR,每行输出中加入自定义字符串print && printf变量内建函数length流程控制语句数组输入1. 命令行参数模式与动作的多种组合情况实用例程1. 输入行的总行数2. 打印第三行3. 打印匹配行的下一行4. 打印每一个输入行的最后一个最后一个字段5. 打印最后一行的最后一个字段6. 打印字段数多于 2 个的输入行7.

lyndon 1万+

AWK命令快速入门

AWK是一个强大的文本处理工具,它的所有功能不可能在一篇文章内讲完。 本文以awk常用的几种情形作为讲解,旨在能够适用于常用的awk文本处理。 awk -F '文本切割符' '{处理过程}’ 文件名 例如:awk -F ':' '{print}' file.txt 如果不指定文本切割符,默认为空白符号 用$n表示切割后第n个部分 例如:jack:lucy:tom 用‘:’切割后,$1

Leo的专栏 2862

[Linux] awk快速入门

The awk programming language, Chapter1 Note 中文版参考https://github.com/wuzhouhui/awk 目录 AWK程序的结构 运行AWK程序 输出 简单的输出print 格式化输出printf 选择 通过文本内容选择 模式的组合 数据验证 BEGIN、END 用AWK计算 计数 计算总和与平均数 取最大值 字符串拼接 打印最后一行 内建函数length 流程控制语句 If-Else 语句 While .

皮卡丘在充电 519

很不错的一个awk快速入门

awk是一种非常好的语言,同时有一个非常奇怪的名称。在本系列的文章中,DanielRobbins 将使您迅速掌握 awk编程技巧。随着本系列的进展,将讨论更高级的主题,最后将演示一个真正的高级awk 演示程序。 awk是一种很棒的语言。awk 适合于文本处理和报表生成,它还有许多精心设计的特性,允许进行需要特殊技巧程序设计。与某些语言不同,awk 的语法较为常见。它借鉴了某些语言的一些精华部

点滴积累 620
上一篇: 如何创建一个简单网页
下一篇: Python_字符串
Cengineering
博客等级 码龄13年 51粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值