linux sed命令使用

您所在的位置:网站首页 sed删除指定字符串所在行 linux sed命令使用

linux sed命令使用

2023-03-31 11:32| 来源: 网络整理| 查看: 265

sed是一款常用的文本处理工具,其名称来自于“stream editor”(流编辑器)。sed能够从标准输入或文件中读取文本,对文本进行编辑和转换,然后将结果输出到标准输出或指定的文件中。在Linux系统中,sed命令是一种非常强大和灵活的工具,可以帮助用户进行多种文本操作,如文本替换、删除、插入、打印等等。

下面是sed命令的详细介绍和使用示例:

命令格式

sed命令的基本格式为:

sed [选项] '动作' 文件名

其中,选项用于指定sed的行为,动作则是对文件进行的操作,文件名表示需要处理的文件。

常用选项

sed命令有一些常用选项,这里列举一些常用的:

-n:不自动打印模式空间的内容,只有在命令中显式指定打印时才会打印;-i:在原文件中直接修改,而不是输出到标准输出或指定文件中;-e:允许对文件进行多个编辑动作;-r:启用扩展正则表达式。常用操作

sed命令支持多种操作,这里介绍一些常用的操作:

1. 替换操作

sed命令可以用来替换文件中的文本。替换操作的格式为:

sed 's/原字符串/新字符串/g' 文件名

其中,s表示替换操作,/是分隔符,g表示全局替换。例如:

$ cat test.txt hello world hello sed $ sed 's/hello/hi/g' test.txt hi world hi sed

上面的命令将文件中的所有hello替换为hi。如果省略g,则只替换每行中的第一个匹配项。

2. 删除操作

sed命令可以用来删除文件中的某些行。删除操作的格式为:

sed '行号d' 文件名

其中,d表示删除操作。例如:

$ cat test.txt line 1 line 2 line 3 $ sed '2d' test.txt line 1 line 3

上面的命令将文件中的第二行删除。可以通过指定多个行号来删除多行,例如:

$ sed '2d;3d' test.txt line 1

上面的命令将文件中的第二行和第三行删除。

3. 插入操作

sed命令可以用来向文件中插入文本。插入操作的格式为:

sed '行号i\ 插入的内容 ' 文件名

其中,i表示插入操作。例如:

$ cat test.txt line 1 line 2 $ sed '2i\ new line ' test.txt line 1 new line line 2

上面的命令将new line插入到文件的第二行之前。

4. 追加操作

sed命令可以用来向文件中追加文本。追加操作的格式为:

sed '行号a\ 追加的内容 ' 文件名

其中,a表示追加操作。例如:

$ cat test.txt line 1 line 2 $ sed '2a\ new line ' test.txt line 1 line 2 new line

上面的命令将new line追加到文件的第二行之后。

5. 打印操作

sed命令可以用来打印文件的某些行。打印操作的格式为:

sed '行号p' 文件名

其中,p表示打印操作。例如:

$ cat test.txt line 1 line 2 line 3 $ sed '2p' test.txt line 2

上面的命令将文件的第二行打印出来。可以通过指定多个行号来打印多行,例如:

$ sed -n '2p;3p' test.txt line 2 line 3

上面的命令将文件的第二行和第三行打印出来,其中-n选项表示禁止自动打印模式空间的内容。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3