【22】linux进阶——文本处理工具:cut、awk、sed

news2025/1/15 14:02:08

大家好,这里是天亮之前ict,本人网络工程大三在读小学生,拥有锐捷的ie和红帽的ce认证。每天更新一个linux进阶的小知识,希望能提高自己的技术的同时,也可以帮助到大家

另外其它专栏请关注:

锐捷数通实验:锐捷数通实验

网络工程师成长日志:网络工程师成长日志

it自动化运维:it自动化运维

      今天主要介绍文本处理工具cut、sed、awk,用好这三个工具,能方便你在海量数据中提取你想要的数据部分。

目录

一 cut

1.1参数

1.2案例

二 sed 

2.1 参数

2.2 案例

三 awk

3.1参数

3.2范例


一 cut

cut的工作就是"剪",具体的说就是在文件中负责剪切数据用的。cut命令从文件的每一行剪切字节、字符和字段,并将这些字节,字符和字段输出。

1.1参数

参数功能
-f列号,取第几列
-d分隔符,按照指定的分割符分割列,把一行拆成N多列
-c按字符进行切割,后加n,表示取第n列,比如:-c 1

1.2案例

列出/etc/passwd文件第一列的信息

cut -d ":" -f 1 /etc/passwd   //以“:”为分隔符,将第一个字符输出

 

列出/etc/passwd文件第1,2,3列的信息

 cut -d ":" -f 1,2,3 /etc/passwd

二 sed 

      sed是一种流编辑器,它一次处理一行内容。处理时,把它处理的行存储在临时缓冲区中,称为”模式空间“,接着用sed命令处理缓冲区间中的内容,处理完后,把缓冲区中的内容送往屏幕。接着处理下一行,这样不断重复直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。

2.1 参数

参数意义
na在当前第n行之下
ni在当前第n行之上
nd在当前第n行删除
s查找并替换

2.2 案例

在第一行下面添加了lmy6666666 

sed ‘1a fdasfasdf’ 文件路径

 注意的是:原文件没有发生任何改变

在第一行上方添加lmy66666666 

sed ‘1i fdasfasdf’ 文件路径

 列出/etc/passwd文件处理复制第一行的信息

sed ‘1p’ 文件路径

三 awk

一个强大的文本分析工具,把文件逐行读入,以空格为默认分隔符将每行切片,切开的部分再进行分析处理。

3.1参数

参数意义
-F指定分割符 -F “;” 'print 打印输出'
NR代表行
NF代表列

3.2范例

awk -F “:" '{print$1}' /etc/passwd    //以:为分隔符输出第一列

 awk -F “:" 'NR==1{print$1}' /etc/passwd //以:分隔符输出第一行第一列

 经典案例,列出ip地址

ifconfig 接口名 | grep netmask | awk 'NR==1{print$2}' 

 “生活的方向无论你如何选择都会后悔,人总向往没经历过的生活”

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

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

相关文章

一段凄惨Android 面试经历分享,败在了项目架构原理上……

大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助。 这是一位网友分享的面试经历,他准备了3个月,刚刚参加完字节跳动的第三面,视频面&#xff…

数说故事联合中山大学国际关系学院共建「国关数据实验室」,深化数据科学与国际关系融合创新

4月9日,数说故事联合中山大学国际关系学院共建的「国关数据实验室」正式启动,此次强强联合是双方在国际关系领域的一项创新尝试,该实验室旨在整合数说故事和国际关系学院师生的资源优势,将数据科学与国际关系研究相结合&#xff0…

真实还原美团4面经历,低学历成功拿到20K Offer...

个人背景 如标题所示,我的个人背景非常简单,软件测试经验 1 年半,学历普通,2 本毕业后出来就一直在做功能测试,在公司每天重复的工作对我的技术提升并没有什么帮助,但小镇出来的我也深知自我努力的重要性&…

Binder 与 四大组件工作原理 其一

Binder Binder的组成结构 Binder的架构如图所示 ServiceManager负责把Binder Server注册到一个容器中。 我们可以这样理解Client、Server 、ServiceManager、Binder Driver之间的关系: 把ServiceManager比喻成电话局,存储着每个住宅的座机电话。张三给…

记录-Vue移动端日历设计与实现

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 工作中遇到一个需求是根据日历查看某一天/某一周/某一月的睡眠报告,但是找了好多日历组件都不是很符合需求,只好自己手写一个日历组件,顺便记录一下。 先看看UI给的…

linux文件编辑与编辑命令

文章目录 一、linux文件编辑与编辑命令总结 一、linux文件编辑与编辑命令 Linux mkdir命令:创建目录 Linux more命令:显示文本文件内容 Linux cat命令:连接文件并打印到标准输出设备上 Linux grep命令:检索文件内容 Linux rm命令:删除文件或目录 Linux touch命令:修改文件的时…

15款时间计划、任务管理APP/软件对比(团队\个人)

15 款不同类型的日程、任务管理应用:1.PingCode;2.Worktile;3.Todoist;4.Trello;5.Microsoft To Do;6.Asana;7.Google 任务;8.Notion;9.Monday.com;10.Teambi…

Matlab对日期变量和时间变量的管理

Matlab2012a内置了三个函数 datanumdatevecdatestr 靠这三个函数,可以基本实现日期变量和时间变量的管理。下面直接来看。 (1)datanum 这个函数用来将字符串,日期矢量转为通用日(数值型)。所谓的通用日…

js特殊对象 - RegExp对象(正则表达式)

1、概述 正则表达式用于定义一些字符串的规则,计算机可以根据正则表达式,来检查一个字符串是否符合规则,获取将字符串中符合规则的内容提取出来。 使用typeof检查正则对象,会返回object。 2、创建正则对象 2.1、使用对象创建 语法…

Java spring 注解 @PostConstruct 实战讲解

前言 在最近的学习中,发现了一个非常实用的注解 —— PostConstruct。通过学习了解,逐步发现它能帮助我更轻松的解决不少原本很复杂的问题。 下面,结合实例介绍 PostConstruct 注解的特性,因为PreDestroy基本用不到,所…

C++算法初级11——01背包问题(动态规划2)

C算法初级11——01背包问题(动态规划2) 文章目录 C算法初级11——01背包问题(动态规划2)问题引入0-1背包问题分析0-1背包问题的形式化分析优化 问题引入 辰辰采药 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大…

Ubuntu开机自启动一些东西

有三种方式做开机自启动 目录 1.免除sudo密码 2.Startup 2.desktop 3.service 1.免除sudo密码 做完这一步你的所有sudo命令都不会再让你输密码了 如果你的开机自启动的东西需要sudo,那么这一步就是必须的,如果不需要sudo,那么这一步可…

Linux安装kubectl

前言 以下所有命令基于CentOS7.9系统,官方参考文档:> 文章最后附有一键安装的脚本,可以直接运行脚本进行安装 下载安装文件 1. 下载最新发行版 curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/st…

C嘎嘎~~[类 中篇]

类 中篇 6.类的实例化7.类对象模型8.this指针8.1this指针是什么8.2this指针的特性 6.类的实例化 什么叫类的 实例化?? 首先, 我们应该关注这个"实" — 实际存在的, 它的反义词是 “虚” — 不存在的. > 类中的成员变量是虚的(相当于声明), 在类外面创建的对象是…

《程序员面试金典(第6版)》面试题 16.06. 最小差(双指针,pair数据结构)

题目描述 给定两个整数数组a和b,计算具有最小差绝对值的一对数值(每个数组中取一个值),并返回该对数值的差 示例: 输入:{1, 3, 15, 11, 2}, {23, 127, 235, 19, 8}输出:3,即数值对(…

Power BI动态日期轴方法总结

趋势,应该是我们做可视化时最熟悉的一个词了,看趋势自然离不开日期,年度趋势,月趋势,周趋势等等。Power BI中我们可以借助于计算表,计算组,字段参数来实现动态实时轴的效果。 计算表实现动态日…

Node.js--基础

一、Node.js是什么 Node.js is a JavaScript runtime built on Chrome’s V8 JavaScript engine. 1、特性 Node.js 可以解析JS代码(没有浏览器安全级别的限制)提供很多系统级别的API,如: 文件的读写 (File System)进程的管理 …

每日一个小技巧:1分钟告诉你文字转图片的方法有哪些

在数字时代,信息传递快速便捷,但文字在传递中却显得单调乏味,难以吸引人们的眼球。为了解决这个问题,越来越多的人开始寻找方法将文字转化为图片。文字转图片不仅能够让文字更具视觉冲击力,还能够在社交媒体、广告宣传…

Nginx常见应用场景

文章目录 场景一:代理静态文件场景二:代理服务器 本教程讲述 Nginx 的常见应用场景。内容接上文:Nginx基本配置。 前提:假设我们已经安装好了 Nginx,并启动成功。 场景一:代理静态文件 Nginx 一个常用的功…

Hilt 和协程助力启动框架搭建:解决代码混乱和初始化策略问题

关于Hilt的使用,目前已经比较普及了,想必大家已经知道。今天说的是一个如何利用Hilt来做一个启动框架的故事。 是否经历过大型项目的启动优化,一遍过去无任何效果,第二遍过去好几处报错,第三遍过去启动不了&#xff0…