当前位置: 首页 > news >正文

Linux| Awk 中“next”命令奇用

简介

本文[1]介绍了在Linux中使用Awk的next命令来跳过剩余的模式和表达式,读取下一行输入的方法。

next命令

在 Awk 系列教程中,本文要讲解如何使用 next 命令。这个命令能让 Awk 跳过所有你已经设置的其他模式和表达式,直接读取下一行数据。

使用 next 命令可以避免执行那些我认为在命令执行过程中会浪费时间的步骤。

为了更好地理解其工作原理,本文以一个名为 food_list.txt 的文件为例,文件内容如下:

alt

想象一下执行这样一个命令:它会在每一行的末尾加上 (*) 符号,这样做是为了标出那些数量不超过 20 的食品项目。

alt

具体来说,上面的命令是这样执行的:

  • 首先,它会检查每一行的第四个数据(即数量)是否不超过 20。如果符合这个条件,这条记录就会被打印出来,并且在行尾加上 (*) 符号,这一步骤通过表达式 $4 <= 20 来实现。
  • 接下来,命令会判断每一行的第四个数据是否大于 20,如果是的话,这条记录也会被打印出来,这一步是通过另一个表达式 $4 > 20 来完成的。

但这里存在一个问题:在执行第一个表达式、通过 { printf "%s\t%s\n", $0,"**" ; } 打印并标记本文想要的行之后,程序还会去检查第二个表达式,这实际上是在浪费时间。

既然使用第一个表达式已经打印并标记了相关行,那么就没必要再去执行第二个表达式 $4 > 20 了。

要解决这个问题,本文可以使用 next 命令,操作如下:

alt

在通过 4 <= 20 { printf "%s\t%s\n", $0,"*" ; next ; } 这条命令打印了一个输入行之后,接下来的 next 命令将确保程序跳过 4 > 20 { print $0 ;} 这个条件判断,直接进入下一行的处理,避免了无谓的时间浪费在检查数量是否超过 20 上。

next 命令对于提高命令的执行效率至关重要,当需要时,它可以显著加快脚本的运行速度。

Reference
[1]

Source: https://www.tecmint.com/use-next-command-with-awk-in-linux/

本文由 mdnice 多平台发布

相关文章:

Linux| Awk 中“next”命令奇用

简介 本文[1]介绍了在Linux中使用Awk的next命令来跳过剩余的模式和表达式&#xff0c;读取下一行输入的方法。 next命令 在 Awk 系列教程中&#xff0c;本文要讲解如何使用 next 命令。这个命令能让 Awk 跳过所有你已经设置的其他模式和表达式&#xff0c;直接读取下一行数据。…...

基于Springboot的箱包存储系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的箱包存储系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&…...

JavaScript_语法--变量

1.4 变量 变量&#xff1a;一小块存储数据的内存空间 Java语言是强类型语言&#xff0c;而JavaScript是弱类型的语言 强类型&#xff1a; 在开辟变量存储空间时&#xff0c;定义了空间将来存储的数据的数据类型。只能存储固定类型的数据 弱类型&#xff1a; 在开辟变量存储空间…...

P1843 奶牛晒衣服

题目背景 熊大妈决定给每个牛宝宝都穿上可爱的婴儿装 。但是由于衣服很湿&#xff0c;为牛宝宝晒衣服就成了很不爽的事情。于是&#xff0c;熊大妈请你&#xff08;奶牛&#xff09;帮助她完成这个重任。 题目描述 一件衣服在自然条件下用一秒的时间可以晒干 a 点湿度。抠门…...

功能强大:JMeter 常用插件全解析

JMeter 作为一个开源的接口性能测试工具&#xff0c;其本身的小巧和灵活性给了测试人员很大的帮助&#xff0c;但其本身作为一个开源工具&#xff0c;相比于一些商业工具&#xff08;比如 LoadRunner&#xff09;&#xff0c;在功能的全面性上就稍显不足。这篇博客&#xff0c;…...

vulhub之fastjson篇-1.2.27-rce

一、启动环境 虚拟机:kali靶机:192.168.125.130/172.19.0.1(docker地址:172.19.0.2) 虚拟机:kali攻击机:192.168.125.130/172.19.0.1 本地MAC:172.XX.XX.XX 启动 fastjson 反序列化导致任意命令执行漏洞 环境 1.进入 vulhub 的 Fastjson 1.2.47 路径 cd /../../vulhub/fa…...

基于springboot实现教师工作量管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现教师工作量管理系统演示 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了教师工作量管理系统的开发全过程。通过分析教师工作量管理系统管理的不足&#xff0c;创建了一个计算机管理教师工作…...

[StartingPoint][Tier1]Crocodile

Task 1 What Nmap scanning switch employs the use of default scripts during a scan? (哪些 Nmap 扫描开关在扫描期间使用默认脚本&#xff1f;) -sC Task 2 What service version is found to be running on port 21? 发现端口 21 上运行的服务版本是什么&#xff1f…...

【Qt】:常用控件(四:显示类控件)

常用控件 一.Lable二.LCD Number 一.Lable QLabel 可以⽤来显⽰⽂本和图⽚. 代码⽰例:显⽰不同格式的⽂本 代码⽰例:显⽰图⽚ 此时,如果拖动窗⼝⼤⼩,可以看到图⽚并不会随着窗⼝⼤⼩的改变⽽同步变化 为了解决这个问题,可以在Widget中重写resizeEvent函数。当用户把窗口从A拖…...

gradio简单搭建——关键词简单筛选【2024-4-11优化】

gradio简单搭建——关键词简单筛选[2024-4-11 优化] 新的思路&#xff1a;标签自动标注界面搭建优化数据处理与生成过程交互界面展示 新的思路&#xff1a;标签自动标注 针对通过关键词&#xff0c;在文本数据中体现出主体的工作类型这一任务&#xff0c;这里使用展示工具grad…...

docker完美安装分布式任务调度平台XXL-JOB

分布式任务调度平台XXL-JOB 1、官方文档 自己看 https://www.xuxueli.com/xxl-job/#1.1%20%E6%A6%82%E8%BF%B0 2、使用docker部署 本人使用的腾讯云&#xff0c;安装docker暴露一下端口&#xff0c;就很舒服的安装这个服务了。 docker pull xuxueli/xxl-job-admin:2.4.03…...

java使用while循环输出2-100的所有素数

使用while循环输出2-100的所有素数,每行输出5个 分析:素数:只能被1和自己整除的自然数 public static void main(String[] args) {int num 2;int count 0;int count1 0;while (num < 100) {for (int i 1; i < num; i) {if (num % i 0) {count;}}if (count 2) {Sys…...

VSCode中调试C++程序

目录 一、准备工作&#xff1a;安装插件 1、C/C插件 ​编辑 2、CMake插件 3、CMake tool插件 二、调试过程 1、debug 2、打断点 3、调C/C文件 每次重新调试的时候都忘了具体步骤&#xff0c;直接给自己写个备忘录好了。 一、准备工作&#xff1a;安装插件 1、C/C插件…...

Can Transformer and GNN Help Each Other?

ABSTRACT 尽管 Transformer 在自然语言处理和计算机视觉方面取得了巨大成功&#xff0c;但由于两个重要原因&#xff0c;它很难推广到中大规模图数据&#xff1a;(i) 复杂性高。 (ii) 未能捕获复杂且纠缠的结构信息。在图表示学习中&#xff0c;图神经网络&#xff08;GNN&…...

在隐私计算应用中和数链具备哪些技术特点?

在加速“可信数字化”进程的背景下&#xff0c;我国区块链产业将在打造新型平台经济&#xff0c;开启共享经济新时代的同时&#xff0c;带动数字经济“脱虚向实”服务实体经济。 和数软件在加速数字化进程的同时&#xff0c;进一步服务实体经济&#xff0c;提高实体经济的活力…...

【智能家居入门4】(FreeRTOS、MQTT服务器、MQTT协议、微信小程序)

前面已经发了智能家居入门的1、2、3了&#xff0c;在实际开发中一般都会使用到实时操作系统&#xff0c;这里就以FreeRTOS为例子&#xff0c;使用标准库。记录由裸机转到实时操作系统所遇到的问题以及总体流程。相较于裸机&#xff0c;系统实时性强了很多&#xff0c;小程序下发…...

爬取豆瓣(线程、Session)优化版本

爬取豆瓣&#xff08;线程、Session&#xff09;优化版本 该文章只是为了精进基础&#xff0c;对Session、threading、网站请求解析的理解。 此版本没有爬取详情页。还在学习阶段的读者可以尝试一下。 适用于基础刚开始学习爬虫的&#xff01; 1.改进点&#xff1a; 将普通的r…...

拷贝控制总结

1.拷贝、值与销毁&#xff1a; 拷贝构造函数&#xff1a;如果一个构造函数的第一个参数是自身类类型的引用&#xff0c;且其他&#xff08;如果有的话&#xff09;参数都有默认实参&#xff0c;则此构造函数叫做拷贝构造函数&#xff1b;如果我们没有为类定义一个拷贝构造函数…...

无重复字符串的最长子串

题目描述&#xff1a;给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串的长度。 第一次提交记录 class Solution:def lengthOfLongestSubstring(self, s: str) -> int:if not s:return 0lookup set()left res 0for right in range(len(s)):while s…...

javaScript Object.hasOwn()的用法

Object.hasOwn() 如果指定的对象自身有指定的属性&#xff0c;则静态方法 Object.hasOwn() 返回 true。如果属性是继承的或者不存在&#xff0c;该方法返回 false。 备注&#xff1a; Object.hasOwn() 旨在取代 Object.prototype.hasOwnProperty()。 **语法&#xff1a;**Objec…...

鸣潮智能自动化助手完整指南:3步配置解放双手的全能方案

鸣潮智能自动化助手完整指南&#xff1a;3步配置解放双手的全能方案 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸 一键日常 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-waves 厌倦了在《鸣潮…...

在Photoshop中解锁AVIF格式:开源插件深度应用指南

在Photoshop中解锁AVIF格式&#xff1a;开源插件深度应用指南 【免费下载链接】avif-format An AV1 Image (AVIF) file format plug-in for Adobe Photoshop 项目地址: https://gitcode.com/gh_mirrors/avi/avif-format 作为网页设计师、摄影师或数字内容创作者&#xf…...

量子网络模拟器SeQUeNCe的并行化设计与性能优化

1. 量子网络模拟的工程挑战与SeQUeNCe的定位量子网络正逐步从理论走向工程实践&#xff0c;其核心价值在于利用量子纠缠特性实现传统通信无法企及的安全性和计算能力。但在实际部署前&#xff0c;工程师们面临一个关键问题&#xff1a;如何验证包含数百个量子节点的网络设计方案…...

光学邻近校正(OPC)技术:原理、优化与应用

1. 光学邻近校正技术概述在半导体制造的光刻工艺中&#xff0c;光学邻近效应&#xff08;Optical Proximity Effect&#xff09;是影响图案转移精度的主要挑战之一。当特征尺寸缩小到45nm及以下节点时&#xff0c;光衍射和光阻化学反应导致的图案失真变得尤为显著。具体表现为&…...

五分钟用Python为嵌入式应用接入Taotoken大模型服务

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 五分钟用Python为嵌入式应用接入Taotoken大模型服务 为嵌入式设备或物联网项目添加智能对话能力&#xff0c;可以极大地提升产品的…...

在线考试系统如何实现随机组卷

在现代教育和企业培训中&#xff0c;考试是评估学习效果、提升培训效率的重要工具。然而&#xff0c;传统的固定试卷模式存在诸多问题&#xff1a;题目重复率高、考试公平性难以保障、人工管理成本高。随着在线培训的发展&#xff0c;尤其是在大规模培训场景下&#xff0c;随机…...

VidToText

链接&#xff1a;https://pan.quark.cn/s/370e0f7f3f42vidToText 离线语音转文字 工具&#xff0c;绝对能帮你解放双手&#xff0c;自带模型不用联网&#xff0c;95% 高准确率&#xff0c;音视频秒转文字&#xff0c;办公和创作效率直接翻倍&#xff01;且这款软件免费使用&…...

从AceForge看一体化AI平台:如何实现模型部署与运维的平民化

1. 项目概述&#xff1a;从“AceForge”看开源AI工具链的平民化革命最近在GitHub上闲逛&#xff0c;发现一个叫“AceForge”的项目&#xff0c;作者是sudokrang。点进去一看&#xff0c;简介写得挺有意思&#xff0c;大意是说这是一个“一站式、开箱即用的AI应用开发与部署平台…...

保姆级避坑指南:在Ubuntu18.04上用ROS Melodic搞定UR5+Realsense D435i手眼标定(附旧版easy_handeye包)

深度避坑实战&#xff1a;Ubuntu18.04ROS Melodic手眼标定全流程精解 当机械臂的末端执行器需要与视觉系统协同工作时&#xff0c;手眼标定成为连接两者的关键桥梁。本文将以UR5机械臂搭配Realsense D435i相机为例&#xff0c;深入剖析在Ubuntu18.04和ROS Melodic环境下实现高精…...

修复肝衰竭的“免疫刹车”:ANXA1是控制炎症失控、促进消退的关键内源信号

慢加急性肝衰竭&#xff08;ACLF&#xff09;的发病进程主要由全身性炎症反应及免疫功能紊乱共同驱动&#xff0c;其病理机制复杂且临床预后较差。2026年4月&#xff0c;浙江大学与斯坦福大学&#xff0c;在Hepatology期刊在线发表了题为“Dissecting the liver inflammation e…...