当前位置: 首页 > 编程日记 > 正文

文件处理命令:sed

使用:sed [-nefr] action
action:-i直接修改读取的档案内容,而不是由屏幕输出,-r表示支持延伸型正则表达式的语法。
动作说明:[n1[,n2]] function n1,n2表示要选择的行数,function包括:
a-新增,c-取代,d-删除,i-插入,p-打印,s-取代(可以直接进行取代的工作,例如 1,20s/old/new/g)

1 替换第一个匹配的内容

[root@limt01 ~]# echo " This is a test1 test2"|sed 's/test/TEST/'This is a TEST1 test2

2 替换所有匹配的内容

[root@limt01 ~]# echo " This is a test1 test2"|sed 's/test/TEST/g'This is a TEST1 TEST2

3 -i 直接修改源文件

sed -i “s/my/Rango Chen's/g” pets.txt

4 在每一行最前面加上#

[root@limt01 ~]# sed 's/^/#/g' pets.txt  
#This is my cat
#my cat's name is betty
#This is my dog
#my dog's name is frank
#This is my fish
#my fish's name is george
#This is my goat
#my goat's name is adam

5 在每一行的末尾加上---

[root@limt01 ~]# sed 's/$/ --- /g' pets.txt   
This is my cat --- 
my cat's name is betty --- 
This is my dog --- 
my dog's name is frank --- 
This is my fish --- 
my fish's name is george --- 
This is my goat --- 

6 只替换第3到第6行的文本

[root@limt01 ~]# sed "3,6s/my/your/g" pets.txt
This is my cat
my cat's name is betty
This is your dog
your dog's name is frank
This is your fish
your fish's name is george
This is my goat
my goat's name is adam

7 只替换第3行的文本

[root@limt01 ~]# sed "3s/my/your/g" pets.txt
This is my cat
my cat's name is betty
This is your dog
my dog's name is frank
This is my fish
my fish's name is george
This is my goat
my goat's name is adam

8 只替换每一行的第二个s

sed 's/s/S/2' my.txt    2表示第二个

9 一次替换多个模式,每个模式之间用;进行间隔

sed '1,3s/my/your/g; 3,$s/This/That/g' my.txt
sed -e'1,3s/my/your/g' -e '3,$s/This/That/g' my.txt

基础的正则表示法特殊字符:

^ 表示一行的开头。如:/^#/ 以#开头的匹配。
$ 表示一行的结尾。如:/}$/ 以}结尾的匹配。
\< 表示词首。如\<abc 表示以abc 为首的詞。
\> 表示词尾。如 abc\> 表示以abc 結尾的詞。
\ 将特殊字符进行转义,还原其本身意义:grep -n \' pets.txt 搜寻含有单引号'的那一行。
. 表示任何单个字符。
* 表示某个字符出现了0次或多次。
[ ] 字符集合。如:[abc]表示匹配a或b或c,还有[a-zA-Z]表示匹配所有的26个字符。如果其中有^表示取反,如[^a]表示非a的字符
\{n,m\} 连续n到m个的“前一个RE字符” grep -n 'go\{2,3\}g' 1.txt 在g与g之间有2到3个o存在的字符串,亦即(goog)(gooog)

转载于:https://www.cnblogs.com/limt/p/4523756.html

相关文章:

新技能 Get,使用直方图处理进行颜色校正

作者 | 小白来源 | 小白学视觉在这篇文章中&#xff0c;我们将探讨如何使用直方图处理技术来校正图像中的颜色。像往常一样&#xff0c;我们导入库&#xff0c;如numpy和matplotlib。此外&#xff0c;我们还从skimage 和scipy.stats库中导入特定函数。import numpy as np impor…

Oracle数据库 之 删除RMAN备份

#su – oracle 切换至存放备份的目录&#xff0c;删除不需要的备份文件。 $export ORACLE_SIDorcl $rman RMAN>connect target / RMAN>crosscheck backup; RMAN>delete expired backup; RMAN>exit 转载于:https://www.cnblogs.com/hdtiny/p/8420770.html

Linux环境编程--fflush(stdout)有什么作用

代码&#xff1a; printf("hello\n");//fflush(stdout);fork(); 输出&#xff1a; hello代码&#xff1a; printf("hello\n");fflush(stdout);fork(); 输出&#xff1a; hellohello说明&#xff1a;系统函数fork()创建新的进程。 printh后打印内容在缓冲区…

sysdba不能远程登录,我们该怎么做 (转载)

sysdba不能远程登录这个也是一个很常见的问题了。 碰到这样的问题我们该如何解决呢&#xff1f; 我们用sysdba登录的时候&#xff0c;用来管理我们的数据库实例&#xff0c;特别是有时候&#xff0c;服务器不再本台机器&#xff0c;这个就更是有必要了。 当我们用sqlplus &qu…

TeaTalk 线上直播倒计时 | 云数据库技术创新研究与实践

随着云计算的发展&#xff0c;数据库上云已经成为趋势&#xff0c;云数据库服务相对于传统数据库在架构、性能与安全等方面都存在着新的挑战。11月23日&#xff0c;移动云TeaTalk线上沙龙带着满满的干货来了&#xff01;本次技术沙龙邀请了移动云创新中心的技术专家及华中科技大…

再测Golang的JSON库

2019独角兽企业重金招聘Python工程师标准>>> 写项目一直需要进行序列化&#xff0c;听到了&#xff0c;也看到了很多同学老师对各个golang的json库进行测评。那本人为什么还要继续进行这一次测评呢&#xff1f; 因为实践过的知识最有说服力&#xff0c;也是属于自己…

一、JAVA通过JDBC连接mysql数据库(连接)

JDBC ----JDBC(Java DataBase Connectivity)是Java与数据库的接口规范&#xff0c;JDBC定义了一个支持标准SQL功能的通用低层的应用程序编程接口(API)&#xff0c;它由Java 语言编写的类和接口组成&#xff0c;旨在让各数据库开发商为Java程序员提供标准的数据库API。 JDBC API…

给你一个热爱阅读的机会,走到哪儿,看到哪儿的读书体验

整理 | 禾木木出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;不知道在自我介绍的时候是不是都有一个共同的爱好&#xff1a;阅读。但是喜欢阅读就代表会经常去图书馆或者是阅读室吗&#xff1f;不&#xff01;这是一个肯定的答案。通常会因为太忙或是懒惰而选择放弃…

Linux环境编程--进程

查看正在运行的进程 #ps -ef #ps ax 可以看到状态查看nice值 #ps -l #ps -fsystem函数 传递命令&#xff0c;如同在shell中执行 char * p"ps ax"; system(p);或者 "ps ax &";//ps一启动shell就返回execl,execlp,execle函数 exec启动一个新程序&#xf…

芝麻HTTP:Scrapy-Splash的安装

2019独角兽企业重金招聘Python工程师标准>>> Scrapy-Splash是一个Scrapy中支持JavaScript渲染的工具&#xff0c;本节来介绍它的安装方式。 Scrapy-Splash的安装分为两部分。一个是Splash服务的安装&#xff0c;具体是通过Docker&#xff0c;安装之后&#xff0c;会…

用bind架设自己的智能DNS

中国的南北网络问题&#xff0c;是许多做网站的人的心病除了使用双通或者多通机房以外&#xff0c;还可以通过多台镜像服务器的方法来提高用户的访问速度 但是&#xff0c;如果使用的双通机房并不是单IP的&#xff0c;或者使用多台镜像的做法&#xff0c;就会面临多个不同的服务…

漫漫运维路——集群基础知识

集群的基本概念随着计算机科学的发展&#xff0c;对计算机的性能要求越来越高&#xff0c;比如在很多流量比较大的门户网站以及科学实验环境中需要海量计算的环境&#xff0c;这时候就迫切需要后端的服务器性能有提升。而对于提升后端服务器性能所采用的方式有两种&#xff0c;…

数据爆发时代,英特尔携手腾讯构筑全面的数据长城

作者 | 贾凯强 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 5G到来&#xff0c;边缘需求不断&#xff0c;IoT持续爆棚&#xff0c;数据在爆炸式增长。 在数据增长的过程中&#xff0c; 相应的其处理能力也需要增长&#xff0c;CPU等算力核心也在提升&#xff0c;…

python3 _笨方法学Python_日记_DAY3

Day3 习题 13: 参数、解包、变量from sys import argvscript, first, second, third argvprint("The script is called:",script) print("Your first variable is:",first) print("Your second variable is:",second) print("Your third…

动漫风格迁移 AnimeGANv2 ,发布线上运行 Demo

作者 | 神经星星出品 | HyperAI超神经By 超神经内容一览&#xff1a;最强二次元风格迁移模型 AnimeGAN 更新啦&#xff0c;现在可以在线上轻松运行模型&#xff0c;还可以调整风格参数&#xff0c;输出你想要的照片效果。关键词&#xff1a;风格迁移 机器视觉 二次元AnimeGANv2…

linux学习笔记一

常用命令 文件操作命令 cat命令 显示文件内容 复制代码 -b 从1开始对所有非空输出行进行编号 -n 从1开始对所有输出行进行编号 ctrls停止滚屏 ctrlq恢复滚屏 ctrlc终止命令的执行 cat file1 file2同时显示文件file1和file2的内容cat file1 file2 > file3将文件file1和f…

解决SecureCRT中文乱码

由于工作和学习需要在Windows7上使用Securecrt操作Linux&#xff08;Red Hat Enterprise Linux 5&#xff09;。一看汉字是乱码。Google一下。基本上是两个方面考虑解决问题&#xff1a;1、首先是Linux要支持汉字字符集&#xff1a;一般UTF-8。在etc/sysconfig/i18n中把LANG改成…

7000 字精华总结,Pandas/Sklearn 进行机器学习之特征筛选,有效提升模型性能

作者 | 俊欣来源 | 关于数据分析与可视化今天小编来说说如何通过pandas以及sklearn这两个模块来对数据集进行特征筛选&#xff0c;毕竟有时候我们拿到手的数据集是非常庞大的&#xff0c;有着非常多的特征&#xff0c;减少这些特征的数量会带来许多的好处&#xff0c;例如提高预…

徒手撸出一个类Flask微框架(三)根据业务进行路由分组

所谓分组就是按照前缀分布映射如&#xff1a;/product/(\w)/(?P<id>\d # 匹配/product/123123 的前缀比如什么类别&#xff0c;类别下的什么产品 等&#xff0c;用request path进行正则匹配&#xff0c;所以需要用到正则分组分析我们当前代码&#xff0c;只有__…

TCP编程函数和步骤

TCP编程的服务器端一般步骤是1、 创建一个socket&#xff0c;用函数socket()&#xff1b;2、 设置socket属性&#xff0c;用函数setsockopt(); * 可选3、 绑定IP地址、端口等信息到socket上&#xff0c;用函数bind();4、 开启监听&#xff0c;用函数listen()&#xff1b;5、 接…

OSD的主要实现方法和类型(转)

源&#xff1a;OSD的主要实现方法和类型 目前有两种主要的OSD实现方法&#xff1a;外部OSD发生器与视频处理器间的叠加合成;视频处理器内部 支持OSD&#xff0c;直接在视频缓存内部叠加OSD信息。 外部OSD发生器与视频处理器间的叠加合成的实现原理是&#xff1a;由一个MCU内建的…

为什么要研究游戏 AI 呢?

作者 | 叶鑫来源 | DatawhaleAI作为时下计算机算法的超级巨星&#xff0c;在例如CV、NLP、语音、机器人等诸多领域都有广泛的应用。而在游戏领域&#xff0c;AI的应用往往被认为只是把游戏角色拟人化&#xff0c;算法的第一印象也通常是强化学习。但实际当中&#xff0c;AI在游…

oracle 工具:tkprof

https://docs.oracle.com/cd/B10501_01/server.920/a96533/ex_plan.htm http://blog.csdn.net/dba_waterbin/article/details/8010629 oracle sql执行计划怎么看 https://zhidao.baidu.com/question/1178766860347033659.html

Linux环境编程--文件基本操作

Linux 下目录是/这样的 而windows是\怎么记呢&#xff1f;\和w是不是一样的反向&#xff1f;所以Linux的目录就是反的反向&#xff0c;好记了。 一&#xff1a;open函数名称&#xff1a;open目标&#xff1a;打开一个文件。头文件&#xff1a;#include <sys/types.h>#in…

Firefox插件

为什么80%的码农都做不了架构师&#xff1f;>>> 网站优化必备的9个Firefox插件 在网页设计制作中经常使用到的火狐浏览器插件工具&#xff1a; 1. Firebug Firebug是开发人员们钟爱火狐浏览器的一个重要原因&#xff0c;Firebug是火狐浏览器上一个集成式的强大调试…

马斯克公开支持“上班摸鱼”:让工作更愉快!

整理 | 王晓曼出品 | 程序人生 &#xff08;ID&#xff1a;coder _life&#xff09;11月16日&#xff0c;在国美集团批评员工上班摸鱼的通报中&#xff0c;一名员工在网易云音乐上使用了22.5G的流量格外显眼。11月18日&#xff0c;网易云音乐也紧跟热点上线了摸鱼计算器活动&am…

瀚思首发三款产品 推动大数据安全战略布局

安全已成为了当下社会最为关注的几个问题之一&#xff0c;随着大数据时代的来临&#xff0c;如今的安全问题也变得严峻和复杂。近日&#xff0c;HanSight瀚思在北京召开了产品战略暨融资发布会&#xff0c;推出了瀚思用户行为分析系统&#xff08;HanSight UBA&#xff09;、瀚…

Linux环境编程--编辑器基本操作

vim使用 新建文件 #vim hello.c 插入模式 按下I键&#xff0c;底下出现- - 插入- - 换行&#xff1a;按下Enter 删除字符&#xff1a;普通模式下按x 删除整行&#xff1a;按dd 恢复删除&#xff1a;按u 取消命令&#xff1a; CtrlR 对U后果弥补 复制&#xff1a;y y2w复制2个…

2021 IDEA大会开启AI思想盛宴,用“创业精神”做科研

11月22日上午10时许&#xff0c;由深圳市福田区人民政府、深圳市福田区科技创新局和粤港澳大湾区数字经济研究院&#xff08;International Digital Economy Academy, 简称“IDEA”&#xff09;联合举办的2021 IDEA大会在深圳福田开幕。大会以“The World Needs a Few Good IDE…

Android不同分辨率和不同密度适配

官方原文地址&#xff1a;http://developer.android.com/training/multiscreen/screendensities.html 本文主要介绍&#xff1a; 1.dip dp sp 简单用法 2.适配不同分辨率屏幕图片的处理方法 支持不同的密度或分辨率 本课介绍如何通过提供不同的资源和使用的测量分辨率独立单元支…