一个超级有用的文件操作命令——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>
相关文章
|
4月前
|
NoSQL Java Linux
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
Linux常用命令语法(一)文件处理
Linux常用命令语法(一)文件处理
Linux常用命令语法(一)文件处理
|
11月前
|
XML Shell Linux
Shell命令编辑与查找文件
  如今,Linux 系统的大多数配置仍通过编辑纯文本文件来完成。甚至当使用图形工具处理配置文件时,也无法完全完成使用纯文本文件所完成的工作。其结果是有时还是需要使用一种文本编辑器来手工配置文件。同样,一些文档文件类型(比如 HTML 和 XML)也是可以手工进行编辑的纯文本文件。
|
C++ 容器
C++实现简单的ls命令以及原理
C++实现简单的ls命令及其原理,C++实现ls命令可通过调用系统函数实现读取目录中的文件名和属性,再通过标准输出进行显示。
82 0
|
Linux Perl
Linux命令小技巧:显示文件指定行的内容
Linux命令小技巧:显示文件指定行的内容
401 0
Linux常用命令语法(二)文件搜索命令
Linux常用命令语法(二)文件搜索命令
Linux常用命令语法(二)文件搜索命令
|
Linux Windows
3.5 Linux命令行下如何识别文件类型?
对于第一次使用 Linux 命令行的用户,可能真的搞不清楚哪个是文件,哪个是目录,究其原因是很难直接通过名字看出来目录和文件的区别。
435 0
3.5 Linux命令行下如何识别文件类型?
|
Perl 机器学习/深度学习 开发工具