Linux基础命令篇:文本处理命令基础操作(awk、sed、sort、uniq、wc)

news2024/9/21 12:24:06

Linux基础命令之文件处理

1. awk

awk是一种文本处理工具,用于处理结构化文本数据。它基于模式匹配和动作来处理输入数据。以下是一些常用的awk选项和示例:

1.1- 打印指定字段:awk '{ print $1, $3 }' input-file(打印输入文件中的第1和第3个字段)

先准备练习所需要的文件和内容
在这里插入图片描述

打印输入文件中每一行的第1和第3个字段
在这里插入图片描述

1.2- 使用自定义字段分隔符:awk -F, '{ print $1, $2 }' input-file(使用逗号作为字段分隔符)

在这里插入图片描述

1.3 - 统计每行的总字数 awk ‘{print NF}’ input-file

在这里插入图片描述
awk还有很多其他的用法,这是一个非常强大的Linux命令,使用起来比其他命令复杂,这先举个简单的例子,在多学习一些Linux知识之后再去探究awk命令。

2. sed

sed是一种流编辑器,用于对输入数据(文件或管道)执行基本文本转换。以下是一些常用的sed选项和示例:

  • 全局替换:sed 's/pattern/replacement/g' input-file(将输入文件中的所有匹配项替换为指定文本)

2.1 - 仅替换第一个匹配项:sed 's/pattern/replacement/' input-file

先创建一个用于练习的文件
在这里插入图片描述
将匹配到的第一个linux字段换成unix
在这里插入图片描述

2.2 - 删除匹配行:sed '/pattern/d' input-file

在这里插入图片描述

删除有free字段的行
在这里插入图片描述

2.3 - 在匹配行之前插入文本:sed '/pattern/i\text-to-insert' input-file

在这里插入图片描述
在匹配到HELLO字段的前一行添加内容
在这里插入图片描述

2.4 - 在匹配行之后追加文本:sed '/pattern/a\text-to-append' input-file

在这里插入图片描述

2.5 - 在指定的后面追加内容

在这里插入图片描述
在这里插入图片描述

3. sort

sort命令用于对文本文件进行排序。以下是一些常用的sort选项和示例:

3.1 - 按数字顺序排序:sort -n input-file

准备一个文件
在这里插入图片描述
在这里插入图片描述

3.2 - 按逆序排序:sort -r input-file

在这里插入图片描述

3.3 - 按指定字段排序:sort -k 2,2 input-file(按第2个字段排序)

在这里插入图片描述

4. uniq

uniq命令用于从文本文件中删除重复行。以下是一些常用的uniq选项和示例:

4.1 - 显示唯一行:sort input-file | uniq

在这里插入图片描述

4.2 - 显示重复行及其计数:sort input-file | uniq -c

在这里插入图片描述

5. wc

wc命令用于计算文本文件中的行数、单词数和字符数。以下是一些常用的wc选项和示例:

5.1 - 显示行数:wc -l input-file

在这里插入图片描述

5.2 - 显示单词数:wc -w input-file

在这里插入图片描述

5.3 - 显示字符数:wc -c input-file

在这里插入图片描述

5.4 - 显示最长行的长度:wc -L input-file

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1553101.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【YOLOv5改进系列(6)】高效涨点----使用DAMO-YOLO中的Efficient RepGFPN模块替换yolov5中的Neck部分

文章目录 🚀🚀🚀前言一、1️⃣ 添加yolov5_GFPN.yaml文件二、2️⃣添加extra_modules.py代码三、3️⃣yolo.py文件添加内容3.1 🎓 添加CSPStage模块 四、4️⃣实验结果4.1 🎓 使用yolov5s.pt训练的结果对比4.2 ✨ 使用…

Javascript 数字精度丢失的问题(超级详细的讲解)

文章目录 一、场景复现二、浮点数二、问题分析小结 三、解决方案参考文献 一、场景复现 一个经典的面试题 0.1 0.2 0.3 // false为什么是false呢? 先看下面这个比喻 比如一个数 130.33333333… 3会一直无限循环,数学可以表示,但是计算机要存储&a…

Linux下iptables实战指南:Ubuntu 22.04安全配置全解析

Linux下iptables实战指南:Ubuntu 22.04安全配置全解析 引言iptables基础知识工作原理组件介绍 iptables规则管理添加规则修改规则删除规则规则持久化 常见的iptables应用场景防止DDoS攻击限制访问速率端口转发日志管理 高级配置和技巧基于时间的规则基于用户的规则结…

语音模块摄像头模块阿里云结合,实现垃圾的智能识别

语音模块&摄像头模块&阿里云结合 文章目录 语音模块&摄像头模块&阿里云结合1、实现的功能2、配置2.1 软件环境2.2 硬件配置 3、程序介绍3.1 程序概况3.2 语言模块SDK配置介绍3.3 程序文件3.3.1 开启摄像头的程序3.3.2 云端识别函数( Py > C ) & 串口程序…

【实现报告】学生信息管理系统(顺序表)

目录 实验一 线性表的基本操作 一、实验目的 二、实验内容 三、实验提示 四、实验要求 五、实验代码如下: (一)顺序表的构建及初始化 (二)检查顺序表是否需要扩容 (三)根据指定学生个…

Redis命令-List命令

4.6 Redis命令-List命令 Redis中的List类型与Java中的LinkedList类似,可以看做是一个双向链表结构。既可以支持正向检索和也可以支持反向检索。 特征也与LinkedList类似: 有序元素可以重复插入和删除快查询速度一般 常用来存储一个有序数据&#xff…

工控安全双评合规:等保测评与商用密码共铸新篇章

01.双评合规概述 2017年《中华人民共和国网络安全法》开始正式施行,网络安全等级测评工作也在全国范围内按照相关法律法规和技术标准要求全面落实实施。2020年1月《中华人民共和国密码法》开始正式施行,商用密码应用安全性评估也在有序推广和逐步推进。…

Day60-Nginx反向代理与负载均衡基于URI及USER_AGENT等跳转讲解

Day60-Nginx反向代理与负载均衡基于URI及USER_AGENT等跳转讲解 9. 基于uri实现动静分离、业务模块分离调度企业案例(参考书籍)10.基于user_agent及浏览器实现转发(参考书籍)11.根据文件扩展名实现代理转发12. Nginx负载均衡监测节点状态13.proxy_next_up…

FPGA高端项目:解码索尼IMX327 MIPI相机转HDMI输出,提供FPGA开发板+2套工程源码+技术支持

目录 1、前言2、相关方案推荐本博主所有FPGA工程项目-->汇总目录我这里已有的 MIPI 编解码方案 3、本 MIPI CSI-RX IP 介绍4、个人 FPGA高端图像处理开发板简介5、详细设计方案设计原理框图IMX327 及其配置MIPI CSI RX图像 ISP 处理图像缓存HDMI输出工程源码架构 6、工程源码…

C/C++ ③ —— C++11新特性

1. 类型推导 1.1 auto auto可以让编译器在编译期就推导出变量的类型 auto的使⽤必须⻢上初始化,否则⽆法推导出类型auto在⼀⾏定义多个变量时,各个变量的推导不能产⽣⼆义性,否则编译失败auto不能⽤作函数参数在类中auto不能⽤作⾮静态成员…

构建智能未来:探索AI人工智能产品业务架构的创新之路

随着人工智能技术的快速发展,AI人工智能产品在各行各业中扮演着越来越重要的角色。本文将深入探讨AI人工智能产品业务架构的创新之路,探讨如何构建智能未来的商业生态。 ### AI人工智能产品业务架构的重要性 AI人工智能产品的业务架构是支撑产品成功的…

Zookeeper的选主流程

Zookeeper的核心是原子广播,这个机制保证了各个Server之间的同步。实现这个机制的协议叫做Zab协议。Zab协议有两种模式,它们分别是恢复模式(选主)和广播模式(同步)。当服务启动或者在领导者崩溃后&#xff…

学习vue3第十二节(组件的使用与类型)

1、组件的作用用途 目的: 提高代码的复用度,和便于维护,通过封装将复杂的功能代码拆分为更小的模块,方便管理, 当我们需要实现相同的功能时,我们只需要复用已经封装好的组件,而不需要重新编写相…

信息系统项目管理师——第10章项目进度管理(重要)

本章节内容属于10大管理知识领域中的重中之重,选择、案例、论文都会考,需要完全掌握。 选择题,大概考3分左右,有的时候会考一点理论大多数都是考计算。 案例题,必考内容,各种类型的计算题,网络图…

基于SpringBoot的“招聘信息管理系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“招聘信息管理系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能结构图 系统首页界面图 企业招聘界面…

免费软件“蓝莓投屏”:支持多个Airplay同时镜像的投屏软件。

引言: 由于定制盒子(3288)不支持投屏功能(有些5.1不支持,安卓4.X本身也不支持),需要借助第三方的投屏软件来实现这一需求。所以,研究半天,蓝莓投屏以其简便易用的特性脱颖而出,只需…

《QT实用小工具·二》图片文字转base64编码

1、概述 源码放在文章末尾 base64编码转换类 图片转base64字符串。base64字符串转图片。字符转base64字符串。base64字符串转字符。后期增加数据压缩。Qt6对base64编码转换进行了重写效率提升至少200%。 下面是demo演示: 项目部分代码如下所示: #ifn…

【漏洞复现】浙大恩特客户资源管理系统 Quotegask_editAction-sql接口处存在SQL注入漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

推动制药行业数字化转型:基于超融合架构的MES一体机解决方案

随着中国对信息化重视程度的不断加深,制药行业作为国民经济的重要支柱之一,也在积极寻求通过数字化手段提升产业效率与产品质量。自党的十六大提出“以信息化带动工业化”的战略以来,制药业的这一转型探索尤为迫切。 在现代制药生产中&#…

FPGA 图像边缘检测(Canny算子)

1 顶层代码 timescale 1ns / 1ps //边缘检测二阶微分算子:canny算子module image_canny_edge_detect (input clk,input reset, //复位高电平有效input [10:0] img_width,input [ 9:0] img_height,input [ 7:0] low_threshold,input [ 7:0] high_threshold,input va…