Sed常见问题整理

  1. Sed如何在匹配行前后加入一行
    a 追加内容 sed ‘/匹配词/a\要加入的内容’ example.file(将内容追加到匹配的目标行的下一行位置)
    i 插入内容 sed ‘/匹配词/i\要加入的内容’ example.file 将内容插入到匹配的行目标的上一行位置)
    示例:
    #我要把文件的包含“chengyongxu.com”这个关键词的行前或行后加入一行,内容为“allow chengyongxu.cn”

    #行前加
    sed -i '/allow chengyongxu.com/i\allow chengyongxu.cn' the.conf.file
    #行前后
    sed -i '/allow chengyongxu.com/a\allow chengyongxu.cn' the.conf.file
  2. sed如何只打印修改的行
    我们通过grep或者egrep(grep -E)打印符合条件的行,如需打印行号,则使用-n参数。但是,如果我们希望先修改文本,然后打印修改后的行,我们可以使用sed,使用-n 和p这些参数。例如:

    sed -n 's/main/mains/'p test.txt

    首先使用-n停止修改后的文本的输出。然后使用p打印修改后的行。

发表评论?

0 条评论。

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据