一个超级有用的文件操作命令——sed命令

简介: 快速,linux ,sed


几个实用的sed替换内容示例

日常开发中常用到的sed替换内容命令样例,拿来即用,大多数情况都能搞定。


1.替换并输出  (不修改源文件)(实用*)

sed's/cat/dog/g' file   #替换hello.txt文件中cat为dog 之后输出

 

cat hello.txt  #首先查看hello.txt中内容

image.gif

sed's/cat/dog/g' hello.txt # 使用sed替换

2.备份文件后直接替换原文件中的内容(实用****)

###替换hello.txt中cat为dog  ###源文件备份为hello.txt.baksed-i.bak 's/cat/dog/g' hello.txt  

image.gif

3.sed命令替换文件中第n 行到m行的内容(实用***)

##替换文件中n行到m行的cat字符为dogsed-i.bak 'n,ms/dog/cat/g' file  

示例截图:

image.gif编辑

4.替换文件中xxx和***之间的内容(实用****)

sed -i.bak '/A/,/B/s/cat/dog/g' sed3.txt

sed -i.bak '/333/,/222/s/444111/555555/g' sed4.txt ###替换333和222之间的内容

image.gif

5.一次替换多个内容(实用****)

sed -e 's/dog1/cat1/g' -e 's/dog2/cat2/g' file  

image.gif


模拟主从复制改配置文件需要修改logfile dump  pid port

正在搭建redis集群。现在希望能够修改里面的端口


6. 替换掉所有包含指定内容的文件(实用*****)

###  sed-i.bak 's/原内容/新内容/g'`grep -lr "原内容" *`

1.txt,2.txt ,3.txt  文件中都含有 33 。现在使用sed命令替换33---》66

sed-i.bak 's/33/66/g'`grep -lr "33" *`

原文件内容:

image.png

替换后:

image.png



sed命令介绍

Linux sed 命令是利用脚本来处理文本文件。

sed 支持指定脚本的指令来处理、编辑文本文件。

Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。


语法:

sed [-hnV][-e<script>][-f <script文件>][文本文件]

参数说明:

  • -e或--expression=<script> 指定script来处理输入的文本文件。</li><li>-f<script文件>或--file=<script文件> 指定script文件来处理输入的文本文件。</li><li>-n或--quiet或--silent 仅显示script处理后的结果。</li><li>-V或--version 显示版本信息。</li></ul><div><br /></div><div><strong>动作说明:</strong></div><ul><li>a :新增, a 的后接字符串,字符串在新的一行出现(当前行的下一行)</li><li>i :插入, i 的后面接字符串,字符串会在新的一行出现(当前行的上一行);</li><li>c :替换, c 的后接字符串,这些字符串将取代 n1,n2 之间的行</li><li>s :替换, s搭配正则表达式。例 1,20s/old/new/g  </li><li>d :删除,d 后不需要内容</li><li>p :打印,通常 p和参数 sed -n 一起使用</li></ul>
目录
打赏
0
4
1
1
1
分享
相关文章
sed命令(超详细)
是一种流编辑器,它是文本处理中非常好的工具,能够完美的配合正则表达式使用,功能不同凡响。 处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命 令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复, 直到文件末尾。
240 0
vim编辑器详细解释
1.下载安装vim 2.三种模式互换 3.vim配置
182 1
C++实现简单的ls命令以及原理
C++实现简单的ls命令及其原理,C++实现ls命令可通过调用系统函数实现读取目录中的文件名和属性,再通过标准输出进行显示。
134 0

相关课程

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等