sed工具使用

Posted momenglin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sed工具使用相关的知识,希望对你有一定的参考价值。

Sed命令语法格式如下所示:

sed [options] command file(s)              

或:

sed [options] -f script file(s)                 

上面命令格式中,展示了Sed的两种使用方法。第一种调用方法中,将编辑指令直接放选项后面这是最为常见的一种。当执行一些较为复杂的编辑操作时,可能使用的编辑命令会很长,这时为了便于阅读,通常将编辑指令放入一个脚本文件中,通过第2种方法来调用Sed编辑文件。

注意:Sed和grep不一样,不管是否找到指定的模式,它的退出状态都是0,只有当命令存在语法错误时,Sed的退出状

   Sed特点

Sed作为编辑器是一个很强大的工具,有如下特点:

(1)    非交互,基于模式匹配的过滤及修改文本。

(2)    逐行处理,太大的文件使用Sed会显得格外有优势。

(3)    可实现对文本的输出、删除、替换、复制、剪切、导入、导出等各种编辑

(4)    脚本化,在shell脚本编程中使用Sed比vim方便。

 Sed用法

Sed使用规则和选项如下表所示。

                                                                                              Sed命令常见的选项

命令选项

描述

-n

使用安静(silent)模式。在一般Sed的用法中,所有来自stdin的资料一般都会被列出到屏幕,但如果加上-n参数后,则只有经过Sed特殊处理的那一行(或者command)才会被列出来。

-e

允许在该选项后面加一条新的编辑指令。当有多条编辑指令时,应该使用该选项逐一添加,如果编辑指令只有一条,可以不使用该选项。

-f

直接将Sed的动作写在一个档案内,-f finame 则可以执行filename内的Sed动作。

-i

直接修改读取的档案内容,而不是由屏幕输出。

-r

支持扩展正则表达式。

-h

输出Sed的帮助信息。

Sed命令语法格式如下所示:

sed [options] command file(s)              

或:

sed [options] -f script file(s)                 

上面命令格式中,展示了Sed的两种使用方法。第一种调用方法中,将编辑指令直接放选项后面这是最为常见的一种。当执行一些较为复杂的编辑操作时,可能使用的编辑命令会很长,这时为了便于阅读,通常将编辑指令放入一个脚本文件中,通过第2种方法来调用Sed编辑文件。

注意:Sed和grep不一样,不管是否找到指定的模式,它的退出状态都是0,只有当命令存在语法错误时,Sed的退出状态才是非0。

8.3.2            Sed特点

Sed作为编辑器是一个很强大的工具,有如下特点:

(1)    非交互,基于模式匹配的过滤及修改文本。

(2)    逐行处理,太大的文件使用Sed会显得格外有优势。

(3)    可实现对文本的输出、删除、替换、复制、剪切、导入、导出等各种编辑

(4)    脚本化,在shell脚本编程中使用Sed比vim方便。

8.1  Sed用法

Sed使用规则和选项如下表8.1所示。

                                                                                           表8.1     Sed命令常见的选项

命令选项

描述

-n

使用安静(silent)模式。在一般Sed的用法中,所有来自stdin的资料一般都会被列出到屏幕,但如果加上-n参数后,则只有经过Sed特殊处理的那一行(或者command)才会被列出来。

-e

允许在该选项后面加一条新的编辑指令。当有多条编辑指令时,应该使用该选项逐一添加,如果编辑指令只有一条,可以不使用该选项。

-f

直接将Sed的动作写在一个档案内,-f finame 则可以执行filename内的Sed动作。

-i

直接修改读取的档案内容,而不是由屏幕输出。

-r

支持扩展正则表达式。

-h

输出Sed的帮助信息。

以上是关于sed工具使用的主要内容,如果未能解决你的问题,请参考以下文章

运维笔记②:使用sed工具取NAS或者服務器的IP

sed工具使用1

linux 常用工具总结sed 工具使用总结

sed工具的使用

sed工具使用2

linux中sed工具的使用