sed命令用法
sed指令用法

sed指令用法sed是一个流编辑器,用于对文本文件进行基本的文本转换和操作。
它可以通过一系列指令对文本进行替换、删除、插入和格式化等操作,方便快捷地处理文本数据。
本篇文章将详细介绍sed指令的用法。
一、基本用法sed命令的基本语法如下:sed [选项] 脚本文件 [输入文件]其中,选项是一些可选的参数,可以用来控制sed命令的行为;脚本文件是包含sed指令的文件;输入文件是需要进行处理的文本文件。
执行sed命令后,它会按照脚本文件中定义的指令对输入文件进行操作,并将结果输出到标准输出。
二、指令分类sed指令可以分为以下几类:1. 查找和替换:使用正则表达式查找文本中的匹配项,并进行替换操作。
2. 删除和插入:删除文本中的某些内容,或向文本中插入新的内容。
3. 格式化:对文本进行排版和格式化,如缩进、换行等。
4. 其他操作:如复制、链接、统计行数等。
三、用法示例1. 查找和替换示例以下是一个查找和替换的示例脚本:sed 's/apple/orange/g' input.txt该指令会在input.txt文件中将所有出现的"apple"替换为"orange"。
2. 删除和插入示例以下是一个删除空白行的脚本:sed '/^[^ ]/ { N; s/\n//; }' input.txt该指令会保留非空白行,并将相邻的空白行合并为一行。
以下是一个向文本中插入新行的脚本:sed '$a\new line' input.txt该指令会在input.txt文件的末尾插入一行"new line"。
3. 格式化示例以下是一个将文本按指定宽度排版的脚本:sed 's/\(.*\)/&\n/g; s/^\n*//; s/\n/\t/g; s/\t*$//;s/\t*/& /g; /^$/d' input.txt width=20 && width=80 >output.txt该指令会将input.txt文件中的每一行按照指定的宽度进行排版,并将结果输出到output.txt文件中。
sed基本用法

`sed` 是一个流编辑器,它用于在文本流中进行基本的文本转换。
它以行为单位处理文本,可以执行插入、删除、查找和替换等操作。
以下是`sed` 的基本用法:1. 插入文本(Insertion):使用`i\` 命令可以在指定行之前插入文本。
例如,要在第5行之前插入一行文本,可以使用以下命令:```arduinosed -i '5i\This is the new line of text.' filename.txt```2. 删除文本(Deletion):使用`d` 命令可以删除指定行。
例如,要删除第10行,可以使用以下命令:```arduinosed -i '10d' filename.txt```3. 查找和替换文本(Substitution):使用`s` 命令可以查找并替换指定文本。
例如,要将所有出现的"apple" 替换为"orange",可以使用以下命令:```arduinosed -i 's/apple/orange/g' filename.txt```其中,`g` 表示全局替换,即替换每一行中的所有匹配项。
如果不加`g` 参数,只会替换每行中的第一个匹配项。
4. 打印文本(Print):使用`p` 命令可以打印指定行。
例如,要打印第10行到第20行,可以使用以下命令:```arduinosed -n '10,20p' filename.txt```使用`-n` 参数可以禁止默认打印所有行,只打印指定的行。
5. 控制输出(Control):使用`q` 命令可以退出`sed` 并打印指定行,然后退出。
例如,要打印第10行然后退出,可以使用以下命令:```arduinosed -n '10q' filename.txt```6. 正则表达式(Regular Expression):`sed` 支持使用正则表达式进行更复杂的文本处理。
sed命令的用法

sed(Stream Editor)是一个强大的文本处理工具,它可以用于对文本进行替换、删除、插入、打印等操作。
下面是sed命令的一些常见用法:1. 替换文本:```sed 's/要替换的内容/替换后的内容/g' 文件名```例如,将文件中所有的"apple"替换为"orange":```sed 's/apple/orange/g' file.txt```2. 删除行:```sed '行号d' 文件名```例如,删除文件中的第3行:```sed '3d' file.txt```3. 插入内容:```sed '行号i\要插入的内容' 文件名```例如,在文件的第5行前插入一行"Hello World":```sed '5i\Hello World' file.txt```4. 打印特定行:```sed -n '行号p' 文件名```例如,打印文件中的第2行和第4行:```sed -n '2p;4p' file.txt```5. 正则匹配:```sed '/匹配模式/操作' 文件名```例如,删除包含"test"的行:```sed '/test/d' file.txt```这只是sed命令的一些基本用法示例,它还有更多高级功能和选项。
你可以通过查看sed的文档或使用`man sed`命令来获取更详细的信息和用法示例。
sed高级用法

sed高级用法sed是一种流编辑器,用于在文本流中进行编辑操作。
除了基本用法之外,sed还具有许多高级用法。
以下是一些常见的高级用法: 1. 使用正则表达式替换文本:sed可以使用正则表达式来替换文本。
例如,要将所有出现的“apple”替换为“orange”,可以使用以下命令:sed 's/apple/orange/g' filename这将在“filename”中找到所有出现的“apple”并将其替换为“orange”。
2. 删除指定行:要删除文件中的特定行,可以使用以下命令: sed 'Nd' filename这将删除文件中的第N行。
例如,要删除文件中的第5行,可以使用以下命令:sed '5d' filename3. 在特定行之前或之后插入文本:要在特定行之前或之后插入文本,可以使用以下命令:sed '/pattern/i text' filename这将在匹配“pattern”的行之前插入“text”。
要在匹配“pattern”的行之后插入文本,可以使用以下命令:sed '/pattern/a text' filename4. 搜索并打印指定行:要搜索文件中的特定行并将其打印出来,可以使用以下命令:sed -n '/pattern/p' filename这将在文件中搜索匹配“pattern”的行,并将其打印出来。
5. 批量编辑多个文件:要在多个文件中进行批量编辑,可以使用以下命令:sed -i 's/apple/orange/g' file1 file2 file3这将在“file1”、“file2”和“file3”中查找并替换所有出现的“apple”为“orange”。
这些仅仅是sed高级用法的一些示例,你可以参考sed的文档来了解更多的用法。
linux命令sed用法

linux命令sed用法Linux命令sed是一款常用的文本处理工具,可以用来实现文本替换、删除、插入等多种操作。
其用法有以下几个方面:1. 替换文本sed命令最常用的功能就是替换文本。
语法如下:sed 's/old/new/g' file.txt其中,s表示替换指令,old表示要替换的文本,new表示替换后的文本,g表示全局替换。
file.txt表示要操作的文件名。
举个例子,假如我们有一个文件file.txt,里面是一些话题的名称,需要将其中的“人工智能”改成“AI”,可以使用以下命令:sed 's/人工智能/AI/g' file.txt2. 删除行如果我们需要删除文件中的某些行,可以使用d指令。
语法如下:sed '/pattern/d' file.txt其中,pattern表示匹配的文本。
file.txt表示要操作的文件名。
这样,可以将匹配到的行删除。
举个例子,如果我们需要将文件file.txt中包含“敏感词”的行全部删除,可以使用以下命令:sed '/敏感词/d' file.txt3. 插入文本如果需要在文件中某一行的前面或后面插入一些文本,可以使用i或a 指令。
语法如下:sed '/pattern/i\ new_line' file.txt或者:sed '/pattern/a\ new_line' file.txt其中,pattern表示匹配的文本,i表示在匹配行前面插入,a表示在匹配行后面插入,new_line表示要插入的文本。
举个例子,如果我们需要在文件file.txt中第二行前面插入一行“这是第一行”,可以使用以下命令:sed '2i\ 这是第一行' file.txt4. 多重编辑如果需要对同一个文件进行多次编辑操作,可以使用多个sed命令,并用分号隔开。
语法如下:sed 'command1; command2; command3...' file.txt举个例子,如果我们需要将文件file.txt中的“敏感词”全部删除,并将“人工智能”改成“AI”,可以使用以下命令:sed '/敏感词/d; s/人工智能/AI/g' file.txt总结sed命令作为一款强大的文本处理工具,可以帮助我们快速进行文本替换、删除、插入等操作,提高工作效率。
sed () 用法

sed是一种非交互式的文本编辑器,可以用来对文本文件进行各种操作。
sed命令通常用于在文本中查找、替换、删除或插入文本。
以下是一些常见的sed用法:
1. 替换文本:使用sed命令可以轻松地对文本进行替换。
例如,要将一个文件中所有的"cat"字符串替换为"dog",可以使用如下命令:
```
sed 's/cat/dog/g' filename.txt
```
这个命令将会在filename.txt的每一行中,将所有的"cat"替换为"dog"。
2. 删除行:使用sed命令可以删除指定的行。
例如,要删除一个文件中的第5行,可以使用如下命令:
```
sed '5d' filename.txt
```
这个命令将会删除filename.txt中的第5行。
3. 插入文本:使用sed命令可以在指定位置插入文本。
例如,要在一个文件的第10行后插入一行文本,可以使用如下命令:
```
sed '10a\This is a new line of text' filename.txt
```
这个命令将会在filename.txt的第10行后面插入一行文本"This is a new line of text"。
以上是一些sed命令的示例,但是实际使用中可能还有更多的用法和选项。
如果需要更详细的信息,可以使用man sed命令来查看sed的手册页。
SED用法
sed用法sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作,下面先了解一下sed的用法sed命令行格式为:sed[-nefri]‘command’输入文本常用选项:-n∶使用安静(silent)模式。
在一般sed的用法中,所有来自STDIN的资料一般都会被列出到萤幕上。
但如果加上-n参数后,则只有经过sed特殊处理的那一行(或者动作)才会被列出来。
-e∶直接在指令列模式上进行sed的动作编辑;-f∶直接将sed的动作写在一个档案内,-f filename则可以执行filename内的sed 动作;-r∶sed的动作支援的是延伸型正规表示法的语法。
(预设是基础正规表示法语法)-i∶直接修改读取的档案内容,而不是由萤幕输出。
常用命令:a∶新增,a的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~c∶取代,c的后面可以接字串,这些字串可以取代n1,n2之间的行!d∶删除,因为是删除啊,所以d后面通常不接任何咚咚;i∶插入,i的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);p∶列印,亦即将某个选择的资料印出。
通常p会与参数sed-n一起运作~s∶取代,可以直接进行取代的工作哩!通常这个s的动作可以搭配正规表示法!例如1,20s/old/new/g就是啦!举例:(假设我们有一文件名为ab)删除某行[root@localhost ruby]#sed'1d'ab#删除第一行[root@localhost ruby]#sed'$d'ab#删除最后一行[root@localhost ruby]#sed'1,2d'ab#删除第一行到第二行[root@localhost ruby]#sed'2,$d'ab#删除第二行到最后一行显示某行.[root@localhost ruby]#sed-n'1p'ab#显示第一行[root@localhost ruby]#sed-n'$p'ab#显示最后一行[root@localhost ruby]#sed-n'1,2p'ab#显示第一行到第二行[root@localhost ruby]#sed-n'2,$p'ab#显示第二行到最后一行使用模式进行查询[root@localhost ruby]#sed-n'/ruby/p'ab#查询包括关键字ruby所在所有行[root@localhost ruby]#sed-n'/\$/p'ab#查询包括关键字$所在所有行,使用反斜线\屏蔽特殊含义增加一行或多行字符串[root@localhost ruby]#cat abHello!ruby is me,welcome to my blog.end[root@localhost ruby]#sed'1a drink tea'ab#第一行后增加字符串"drink tea"Hello!drink tearuby is me,welcome to my blog.end[root@localhost ruby]#sed'1,3a drink tea'ab#第一行到第三行后增加字符串"drink tea"Hello!drink tearuby is me,welcome to my blog.drink teaenddrink tea[root@localhost ruby]#sed'1a drink tea\n or coffee'ab#第一行后增加多行,使用换行符\nHello!drink teaor coffeeruby is me,welcome to my blog.end代替一行或多行[root@localhost ruby]#sed'1c Hi'ab#第一行代替为HiHiruby is me,welcome to my blog.end[root@localhost ruby]#sed'1,2c Hi'ab#第一行到第二行代替为HiHiend替换一行中的某部分格式:sed's/要替换的字符串/新的字符串/g'(要替换的字符串可以用正则表达式)[root@localhost ruby]#sed-n'/ruby/p'ab|sed's/ruby/bird/g'#替换ruby 为bird[root@localhost ruby]#sed-n'/ruby/p'ab|sed's/ruby//g'#删除ruby插入[root@localhost ruby]#sed-i'$a bye'ab#在文件ab中最后一行直接输入"bye"[root@localhost ruby]#cat abHello!ruby is me,welcome to my blog.endbye删除匹配行sed-i'/匹配字符串/d'filename(注:若匹配字符串是变量,则需要“”,而不是‘’。
sed命令用法
sed命令用法sed,即Stream EDitor的缩写,是一种流编辑器,它能够使用户对文本流进行处理,它是Linux系统中最常被使用的数据处理工具,能够快速且高效完成文本处理工作。
1、sed命令简介sed是一种流编辑器,由Unix系统提供,它能够在脚本文件中调用,以完成一些文本处理任务。
它支持一些正则表达式,也可以使用字符串或数字作为参数,用于查找和替换字符串。
它可以在文本文件、标准输入流、一个或多个文件中进行编辑和处理,它的好处在于速度快,可以使用通配符规范文本文件,使用一次可以改变多行文本,并且可以控制环境。
2、sed命令用法(1)sed命令基本形式sed [选项] 'command' filename(2)sed命令参数-i.bak:备份当前被编辑文件,以"filename.bak"格式作为存档文件;-n:使用安静模式,即不自动打印输出;-e:后接 sed 命令行,用于执行多条命令;-f:执行 sed 编辑脚本,使得程序分离命令和数据;-r:使用扩展的正则表达式;-u:表示单字节字符集。
(3)sed 命令常见功能a:在文件末尾或某一行后面添加文本;c:用新文本替换一行或多行;d:删除一行或多行;i:在文件开头或某一行前面添加文本;p:打印行;s:使用正则表达式匹配已存在的文本内容,并替换成指定文本;r:从外部文件读入文本,替换当前行;n:读取下一行文本;q:退出 sed 命令。
3、使用实例(1)打印文件的第一、三、五行sed -n '1p;3p;5p' filename.txt(2)从每一行的开头添加字符串:sed 's/^/mystring/' filename.txt(3)替换文件中的字符串sed 's/string1/string2/g' filename.txt。
sed常见用法
sed常见用法
sed是一个强大的文本处理工具,它可用于在命令行中编辑文本文件的内容。
sed通常用于过滤和转换文本数据,它可以执行的操作包括查找和替换、删除行、插入行、追加行、转换大小写等。
以下是sed的一些常见用法:
1. 查找和替换:使用sed命令可以查找并替换文本中的某个字符串,语法为:sed 's/old/new/g' filename,其中old表示要被替换的字符串,new表示替换后的字符串,g表示全局替换。
2. 删除行:使用sed命令可以删除文本中的某些行,语法为:sed 'Nd' filename,其中N表示要删除的行数。
3. 插入行:使用sed命令可以在文本中插入新的行,语法为:sed 'Niafter_text' filename,其中N表示在第N行后插入文本,i表示插入,after_text表示要插入的文本内容。
4. 追加行:使用sed命令可以在文本的末尾追加新的行,语法为:sed '$aafter_text' filename,$表示文本的末尾,a表示追加,after_text表示要追加的文本内容。
5. 转换大小写:使用sed命令可以将文本中的字母转换成大写或小写,语法为:sed 's/[a-z]/U&/g' filename(将小写字母转换成大写字母),sed 's/[A-Z]/L&/g' filename(将大写字母转换成小写字母)。
以上是sed的一些常见用法,它们可以帮助我们更轻松地处理文本文件。
linux中的sed命令用法
linux中的sed命令用法
Sed是一种用于文本处理的流编辑器,可用于编辑或替换大量文本。
其用法如下:
1. 替换操作
格式:s/搜索模式/替换模式/g
示例:将文件file.txt中的所有‘hello’替换为‘你好’
```
sed -i 's/hello/你好/g' file.txt
```
2. 删除操作
格式:d
示例:删除文件file.txt中包含‘hello’的所有行
```
sed -i '/hello/d' file.txt
```
3. 插入操作
格式:i\插入内容
示例:在文件file.txt的每一行前插入‘start’一行文字
```
sed -i 'i\start' file.txt
```
4. 追加操作
格式:a\追加内容
示例:在文件file.txt的每一行后追加‘end’一行文字
```
sed -i 'a\end' file.txt
```
5. 行号定位
格式:num action
示例:在文件file.txt的第2行后追加‘new’一行文字```
sed -i '2a\new' file.txt
```。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
sed命令行格式为:sed [-nefri] ‘command’输入文本/文件常用选项:-n∶取消默认的输出,使用安静(silent)模式。
在一般sed 的用法中,所有来自STDIN的资料一般都会被列出到屏幕上。
但如果加上-n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来-e∶进行多项编辑,即对输入行应用多条sed命令时使用. 直接在指令列模式上进行sed 的动作编辑-f∶指定sed脚本的文件名. 直接将sed 的动作写在一个档案内,-f filename 则可以执行filename 内的sed 动作-r∶sed 的动作支援的是延伸型正则表达式的语法。
(预设是基础正则表达式语法)-i∶直接修改读取的文件内容,而不是由屏幕输出常用命令:a ∶新增,a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)c ∶取代,c 的后面可以接字串,这些字串可以取代n1,n2 之间的行d ∶删除,因为是删除,所以d 后面通常不接任何内容i ∶插入,i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行)p∶列印,亦即将某个选择的资料印出。
通常p 会与参数sed -n 一起用s∶取代,可以直接进行替换的工作。
通常这个s 的动作可以搭配正则表达式。
例如1,20s/old/new/g定址定址用于决定对哪些行进行编辑。
地址的形式可以是数字、正则表达式、或二者的结合。
如果没有指定地址,sed将处理输入文件的所有行。
地址是一个数字,则表示行号;是“$"符号,则表示最后一行。
例如:sed -n '3p'datafile只打印第三行只显示指定行范围的文件内容,例如:# 只查看文件的第100行到第200行sed -n '100,200p' mysql_slow_query.log地址是逗号分隔的,那么需要处理的地址是这两行之间的范围(包括这两行在内)。
范围可以用数字、正则表达式、或二者的组合表示。
例如:举例:(假设我们有一文件名为ab)删除某行[root@localhost ruby] # sed '1d' ab#删除第一行[root@localhost ruby] # sed '$d' ab #删除最后一行[root@localhost ruby] # sed '1,2d' ab #删除第一行到第二行[root@localhost ruby] # sed '2,$d' ab #删除第二行到最后一行显示某行. [root@localhost ruby] # sed -n '1p' ab #显示第一行[root@localhost ruby] # sed -n '$p' ab#显示最后一行[root@localhost ruby] # sed -n '1,2p' ab#显示第一行到第二行[root@localhost ruby] # sed -n '2,$p' ab#显示第二行到最后一行使用模式进行查询[root@localhost ruby] # sed -n '/ruby/p' ab#查询包括关键字ruby所在所有行[root@localhost ruby] # sed -n '/\$/p' ab#查询包括关键字$所在所有行,使用反斜线\屏蔽特殊含义增加一行或多行字符串[root@localhost ruby]# cat abHello!ruby is me,welcome to my blog.end[root@localhost ruby] # sed '1a drink tea' ab #第一行后增加字符串"drink tea"Hello!drink tearuby is me,welcome to my blog.end[root@localhost ruby] # sed '1,3a drink tea' ab #第一行到第三行后增加字符串"drink tea"Hello!drink tearuby is me,welcome to my blog.drink teaenddrink tea[root@localhost ruby] # sed '1a drink tea\n or coffee' ab #第一行后增加多行,使用换行符\nHello!drink teaor coffeeruby is me,welcome to my blog.end代替一行或多行[root@localhost ruby] # sed '1c Hi' ab #第一行代替为HiHiruby is me,welcome to my blog.end[root@localhost ruby] # sed '1,2c Hi' ab #第一行到第二行代替为HiHiend替换一行中的某部分格式:sed 's/要替换的字符串/新的字符串/g' (要替换的字符串可以用正则表达式)[root@localhost ruby] # sed -n '/ruby/p' ab | sed 's/ruby/bird/g'#替换ruby为bird [root@localhost ruby] # sed -n '/ruby/p' ab | sed 's/ruby//g'#删除ruby插入[root@localhost ruby] # sed -i '$a bye' ab #在文件ab中最后一行直接输入"bye"[root@localhost ruby]# cat abHello!ruby is me,welcome to my blog.endbye替换:-e是编辑命令,用于sed执行多个编辑任务的情况下。
在下一行开始编辑前,所有的编辑动作将应用到模式缓冲区中的行上。
sed -e '1,10d'-e 's/My/Your/g'datafile#选项-e用于进行多重编辑。
第一重编辑删除第1-3行。
第二重编辑将出现的所有My替换为Your。
因为是逐行进行这两项编辑(即这两个命令都在模式空间的当前行上执行),所以编辑命令的顺序会影响结果。
# 替换两个或多个空格为一个空格sed 's/[ ][ ]*/ /g' file_name# 替换两个或多个空格为分隔符:sed 's/[ ][ ]*/:/g' file_name# 如果空格与tab共存时用下面的命令进行替换# 替换成空格sed 's/[[:space:]][[:space:]]*/ /g' filename# 替换成分隔符:sed 's/[[:space:]][[:space:]]*/:/g' filename==============sed命令的调用:在命令行键入命令;将sed命令插入脚本文件,然后调用sed;将sed命令插入脚本文件,并使sed 脚本可执行sed [option] sed命令输入文件在命令行使用sed命令,实际命令要加单引号 sed [option] -f sed脚本文件输入文件使用sed脚本文件sed脚本文件 [option] 输入文件第一行具有sed命令解释器的sed脚本文件option如下:n 不打印; sed不写编辑行到标准输出,缺省为打印所有行(编辑和未编辑),p命令可以用来打印编辑行c 下一命令是编辑命令,使用多项编辑时加入此选项f 如果正在调用sed脚本文件,使用此选项,此选项通知sed一个脚本文件支持所用的sed命令,如sed -f myscript.sed input_file 这里myscript.sed即为支持sed命令的文件使用重定向文件即可保存sed的输出使用sed在文本中定位文本的方式:x x为一行号,比如1x,y 表示行号范围从x到y,如2,5表示从第2行到第5行/pattern/ 查询包含模式的行,如/disk/或/[a-z]//pattern/pattern/ 查询包含两个模式的行,如/disk/disks//pattern/,x 在给定行号上查询包含模式的行,如/disk/,3x,/pattern/ 通过行号和模式查询匹配行,如 3,/disk/x,y! 查询不包含指定行号x和y的行基本sed编辑命令:p 打印匹配行 c/ 用新文本替换定位文本= 显示文件行号 s 使用替换模式替换相应模式a/ 在定位行号后附加新文本信息 r 从另一个文本中读文本i/ 在定位行号后插入新文本信息 w 写文本到一个文件d 删除定位行 q 第一个模式匹配完成后退出或立即退出 l 显示与八进制ASCII代码等价的控制字符 y 传送字符n 从另一个文本中读文本下一行,并附加在下一行 {} 在定位行执行的命令组g 将模式2粘贴到/pattern n/基本sed编程举例:使用p(rint)显示行: sed -n '2p' temp.txt 只显示第2行,使用选项n打印范围: sed -n '1,3p' temp.txt 打印第1行到第3行打印模式: sed -n '/movie/'p temp.txt 打印含movie的行使用模式和行号查询: sed -n '3,/movie/'p temp.txt 只在第3行查找movie并打印显示整个文件: sed -n '1,$'p temp.txt $为最后一行任意字符: sed -n '/.*ing/'p temp.txt 注意是.*ing,而不是*ing打印行号: sed -e '/music/=' temp.txt附加文本:(创建sed脚本文件)chmod u+x script.sed,运行时./script.sed temp.txt#!/bin/sed -f/name1/ a/ #a/表示此处换行添加文本HERE ADD NEW LINE. #添加的文本内容插入文本: /name1/ a/ 改成 4 i/ 4表示行号,i插入修改文本: /name1/ a/ 改成 /name1/ c/ 将修改整行,c修改删除文本: sed '1d' temp.txt 或者 sed '1,4d' temp.txt替换文本: sed 's/source/OKSTR/' temp.txt 将source替换成OKSTRsed 's//$//g' temp.txt 将文本中所有的$符号全部删除sed 's/source/OKSTR/w temp2.txt' temp.txt 将替换后的记录写入文件temp2.txt替换修改字符串: sed 's/source/"ADD BEFORE" &/p' temp.txt结果将在source字符串前面加上"ADD BEFORE",这里的&表示找到的source字符并保存sed结果写入到文件: sed '1,2 w temp2.txt' temp.txtsed '/name/ w temp2.txt' temp.txt从文件中读文本: sed '/name/r temp2.txt' temp.txt在每列最后加文本: sed 's/[0-9]*/& Pass/g' temp.txt从shell向sed传值: echo $NAME | sed "s/go/$REP/g" 注意需要使用双引号快速一行命令:'s//.$//g' 删除以句点结尾行'-e /abcd/d' 删除包含abcd的行's/[][][]*/[]/g' 删除一个以上空格,用一个空格代替's/^[][]*//g' 删除行首空格's//.[][]*/[]/g' 删除句号后跟两个或更多的空格,用一个空格代替'/^$/d' 删除空行's/^.//g' 删除第一个字符,区别 's//.//g'删除所有的句点's/COL/(.../)//g' 删除紧跟COL的后三个字母's/^////g' 删除路径中第一个////////////////////////////////////////////////////////////////////////、使用句点匹配单字符句点“.”可以匹配任意单字符。