erlang学习:Linux命令学习9

news2024/10/8 23:22:27

sed命令介绍

sed全称是:Stream EDitor(流编辑器)
Linux sed 命令是利用脚本来处理文本文件,sed 可依照脚本的指令来处理、编辑文本文件。Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等

sed 的运行模式

当处理数据时,Sed 从输入源一次读入一行,并将它保存到所谓的模式空间pattern space中。所有 Sed 的变换都发生在模式空间。变换都是由命令行上或外部 Sed 脚本文件提供的单字母命令来描述的。大多数 Sed 命令都可以由一个地址或一个地址范围作为前导来限制它们的作用范围

sed的相关选项

 -n, --quiet, --silent    取消自动打印模式空间
 -e 脚本, --expression=脚本   添加“脚本”到程序的运行列表
 -f 脚本文件, --file=脚本文件  添加“脚本文件”到程序的运行列表
 --follow-symlinks    直接修改文件时跟随软链接
 -i[扩展名], --in-place[=扩展名]    直接修改文件(如果指定扩展名就备份文件)
 -l N, --line-length=N   指定“l”命令的换行期望长度
 --posix  关闭所有 GNU 扩展
 -r, --regexp-extended  在脚本中使用扩展正则表达式
 -s, --separate  将输入文件视为各个独立的文件而不是一个长的连续输入
 -u, --unbuffered  从输入文件读取最少的数据,更频繁的刷新输出
 --help     打印帮助并退出
 --version  输出版本信息并退出
 -a ∶新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)-c ∶取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
 -d ∶删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
 -i ∶插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行)-p ∶列印,亦即将某个选择的资料印出。通常 p 会与参数 sed -n 一起运作~
 -s ∶取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法

sed语法

Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]...

本次测试文本内容

polkitd 999
chrony 998
xiaowang 1000
chenhang 1001
zhnagjian 1002
zhangjian 1003
wangshenghu 1004
yalin 1005
nginx 997
lilanqing 1006
califeng 1007
cali123 1008
shimengmeng 1010
zhouyiwei 1011
zhaojunjie 1013
kimi 1014
kimi2 996
linhucong 1015
kimi3 1016
feng2 1018
feng3 1019
feng4 1020
feng5 1021
liudehua 1022
liming 1023
libai 1024
xiaoxiao 1025
xiyangyang 1026
meiyangyang 1027
lanyangyang 1028
zhangwuji 1029
liang 1030

sed的查看功能

查看test.txt中五至八行的内容

sed -n '5,8 p' test.txt

请添加图片描述
查看test.txt文件中以z/zha开头的行

sed -n '/^z/ p' test.txt
sed -n '/^zha/ p' test.txt

请添加图片描述

sed的查找功能
查找test.txt文件中有101字符串的行

sed -n '\%101% p' test.txt

请添加图片描述
将 test.txt 第 2~4 行删除打印输出

sed '2,5 d' test.txt |head

这里经过我的观察,如果要删除某一行,后面的数字要行数+1才行,例如想删2-5行,需要写2,6
请添加图片描述

以行为单位的新增

在文件test.txt上的第四行后面添加新字符串

sed -e 4a\it-test test.txt | head

请添加图片描述
passwd第1前追加huawei

sed '1 i\huawei ' test.txt |head

请添加图片描述

sed替换功能

test.txt第三行替换为redhat

sed '3 c\redhat' test.txt |head

请添加图片描述
将test.txt的5到10的101字符串查找出来替换为aaaa

sed -n '5,11 s/101/aaaa/ p' test.txt |head

这里没替换出来,不知道哪里出了问题
请添加图片描述

修改原文件之前备份

sed -i.bak '1 d' test.txt

请添加图片描述

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

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

相关文章

Dev-C++ 安装与使用(dev c++官网)(已解决)

1.Dev-C的安装 ①打开Dev-C的官网(https://sourceforge.net/projects/orwelldevcpp/ );点击Download(下载),等待5秒后开始下载。 ②点开下载好的EXE文件,等待加载完成(如图)。 右键,以管理员身份 运行安装包。 选择English(英语),…

近年来自动驾驶行业就业与企业需求情况

自动驾驶行业在近年来持续发展,就业情况和企业需求呈现出多样化和复杂化的趋势。 以下是基于我搜索到的资料对自动驾驶行业最新就业情况和企业需求的详细分析: 自动驾驶行业对高端技术人才的需求非常旺盛,尤其是架构工程师、算法工程师等岗…

四、Python基础语法(数据类型转换)

数据类型转换就是将一种类型的数据转换为另外一种类型的数据,数据类型转换不会改变原数据,是产生一个新的数据。 变量 要转换为的类型(原数据) -> num int(28) 一.int()将其他类型转换为整型 1.整数类型的字符串转换为整型 num1 28 print(type…

判断推理(3)

A正好说反了 C没说唐朝是否使用陶片 题干说的是有时会造成伤害,但是没有说服用了维生素和矿物质一定会带来伤害,所以A选项不能进行削弱 D是对比实验:增加反向论据。通过对儿童的调查发现,不服用的儿童营养缺乏症的发病率高,通过对…

Windows无需管理员权限,命令轻松修改IP和DNS

哈喽大家好,欢迎来到虚拟化时代君(XNHCYL)。 “ 大家好,我是虚拟化时代君,一位潜心于互联网的技术宅男。这里每天为你分享各种你感兴趣的技术、教程、软件、资源、福利…(每天更新不间断,福利…

QML: FolderListModel(访问本地系统文件)

目录 一.性质 1.导入模块 2.基本属性 3.数据模型接口 4.方法 二.使用 1.引入 2.调用 三.效果 四.代码 一.性质 FolderListModel是QT提供的一个可以访问本地系统文件夹内容的组件,它能够将获取到的信息提供给其他组件使用。 1.导入模块 在使用FolderLis…

java动态生成类javassist

简述 Javassist(Java Programming Assistant)是一个 操作Java 字节码的类库,主要用于在运行时或编译时修改 Java 类的字节码。 它提供了相对简单的 API,让开发者可以动态地创建、修改和加载 Java 类 , 从而实现诸如动态代理、AOP…

用友Yonbuilder 平台使用教程序

用友Yonbuilder 平台使用教程 目录概述需求: 设计思路实现思路分析 免费下载参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,c…

opencv学习:利用帧差法实现对视频移动物体的识别、帧差法的优缺点及完整代码实现

基本概念 帧差法是视频处理和计算机视觉领域中用于移动检测的一种简单而有效的方法。它主要依赖于连续视频帧之间的像素差异来识别场景中的移动对象。 帧差法: 定义:帧差法通过比较连续的视频帧之间的差异来检测移动对象。基本思想是移动对象会在连续的…

基于unbantu操作系统下的docker安装全教程

目录 检查docker安装环境 1.检查服务器的CPU和操作系统版本是否为docker支持的版本。 2.卸载已有的docker 安装docker 1.创建目录 2.下载GPG秘钥 3.添加Docker的APT源 4.更新APT包索引并安装Docker 5.运行docker并配置镜像加速器 安装docker-compose 使用apt命令下载…

MAC中滚轮方向和Windows相反的解决方案

MACOS外接鼠标滚轮方向与Windows相反 MAC中滚轮方向和Windows相反,很难受 在使用MACOS操作系统时,滚轮的方向和Windows系统中的相反,这一点常常让人感到不适应和困惑。当第一次切换到MAC电脑时,许多用户会发现他们的习惯滚动操作…

LORD-GX5-45 ROS安装

1、驱动安装 https://github.com/LORD-MicroStrain/MSCL 上述下载 x64:C&#xff0c;在下载完的deb文件下执行 sudo dpkg -i <PACKAGE_NAME>.deb #install MSCL sudo apt install -f #install dependencies2、源码安装 #新建工作空间 mkdir -p ~…

Windows系统编程(三)线程并发

进程与线程 进程&#xff1a;直观的说就是任务管理器中各种正在运行的程序。对于操作系统来说&#xff0c;进程仅仅是一个数据结构&#xff0c;并不会真实的执行代码 线程&#xff1a;通常被称作但并不真的是轻量级进程或实际工作中的进程&#xff0c;它会真实的执行代码。每…

环形链表(c语言)

1.//环形链表 //输入&#xff1a;head [3,2,0,-4], pos 1 //输出&#xff1a;true //解释&#xff1a;链表中有一个环&#xff0c;其尾部连接到第二个节点。 //输入&#xff1a;head [1, 2], pos 0 //输出&#xff1a;true //解释&#xff1a;链表中有一个环&#xff0c;其…

保留字作为数据表字段导致的问题!!!

我 | 在这里 ⭐ 全栈开发攻城狮、全网10W粉丝、2022博客之星后端领域Top1、专家博主。 &#x1f393;擅长 指导毕设 | 论文指导 | 系统开发 | 毕业答辩 | 系统讲解等。已指导60位同学顺利毕业 ✈️个人公众号&#xff1a;乡下小哥编程。回复 Java全套视频教程 或 前端全套视频教…

考拉悠然携手中国系统打造城市智能中枢,让城市更聪明更智慧

在21世纪的科技浪潮中&#xff0c;智慧城市建设已成为推动城市现代化进程的重要引擎。随着人工智能技术的飞速发展&#xff0c;AI正以前所未有的速度融入智慧城市管理的每一个角落&#xff0c;从交通出行到公共安全&#xff0c;从环境保护到城市管理&#xff0c;无一不彰显着智…

SCRM呼叫中心高保真Axure原型 源文件分享

在数字化时代&#xff0c;客户关系管理&#xff08;CRM&#xff09;对于企业的成功至关重要。SCRM呼叫中心后台作为一款专为CRM设计的软件原型&#xff0c;致力于为企业提供高效、智能的客户沟通解决方案。本文将详细介绍该产品的核心功能及其对企业提升客户满意度和销售业绩的…

《Linux从小白到高手》理论篇:Linux的进程管理详解

本篇将介绍Linux的进程管理相关知识&#xff0c;并将深入介绍Linux的进程间相互通信。 进程就是运行中的程序&#xff0c;一个运行着的程序&#xff0c;可能有多个进程。 比如Oracle DB&#xff0c;启动Oracle实例服务后&#xff0c;就会有多个进程。 Linux进程分类 在 Linux…

如何下载和安装CLion,图文详解

一、下载 登录JetBrains官网&#xff0c;下载最新版本的Clion&#xff0c;Clion目前没有社区版&#xff0c;都是专业版。 二、安装 1、启动Clion安装程序&#xff0c;下一步。 2、修改安装目录&#xff0c;下一步。 3、创建桌面快捷方式&#xff0c;更新PATH变量&#xff0…