查看: 19558|回复: 0

Linux文本处理–sed命令编辑器

0

主题

0

回帖

0

积分

Yolanda 发表于 2013-10-11 14:39:08 | 显示全部楼层 |阅读模式
    sed编辑器–Stream editor(流编辑器),相对于交互式编辑器如vim无法进行人工交互,需要根据在编辑器处理数据之前事先提供的规则集编辑数据流。
   
    sed编辑器可以根据输入命令行的命令或者存储在文本文件中的命令处理数据。每次从输入读取一行数据,将数据与编辑器提供的命令进行匹配,修改数据流中的数据,然后将心数据输入到stdout。处理完数据流中所有的数据行之后,流编辑器停止。
    正是由于按顺序逐行应用命令,因而使得sed编辑器比交互式编辑器要快速。
       截图00.png
    1. 直接在命令中定义编辑器命令
        echo “This is a test” | sed ‘s/test/big test/’
    输出This is a big test。


    上面的例子只是编辑了一行数据,下面看编辑文本文件的例子。


    文本文件的名称为data,
        sed ‘s/a/an/’ data
    将文本文件中的a替换成an

    2. 在命令行使用多个编辑器命令

    如果使用多个编辑器命令,则需要使用-e选项。
        sed -e ‘s/This/That/; s/a/an/’ data

    3. 从文件读取编辑器命令

    如果命令选项规则比较多,可以将这些规则放到文件中,并且使用-f选项。
        sed -f script data







回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则