美文网首页
linux命令之sed

linux命令之sed

作者: caoxinyiyi | 来源:发表于2018-07-02 16:36 被阅读3次

简介

sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。

具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的行,完成后把该行发送到屏幕上。sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。

常用命令:

  • sed -n '3p' datafile 只打印第三行
  • sed -n '5,10p' filename 只查看文件的第5行到第10行
  • sed '2,5d' datafile 删除第2到第5行
  • sed '/My/,/You/d' datafile 删除包含"My"的行到包含"You"的行之间的行
  • sed '/My/,10d' datafile 删除包含"My"的行到第十行的内容
  • sed -e '1,10d' -e 's/My/Your/g' datafile -e是编辑命令,用于sed执行多个编辑任务的情况下。在下一行开始编辑前,所有的编辑动作将应用到模式缓冲区中的行上。 选项-e用于进行多重编辑。第一重编辑删除第1-3行。第二重编辑将出现的所有My替换为Your。因为是逐行进行这两项编辑(即这两个命令都在模式空间的当前行上执行),所以编辑命令的顺序会影响结果。
  • sed 's/^My/You/g' datafile 命令末端的g表示在行内进行全局替换,也就是说如果某行出现多个My,所有的My都被替换为You
  • sed -n '1,20s/My$/You/gp' datafile 处理1到20行里匹配以My结尾的行,把行内所有的My替换为You,并打印到屏幕上。

相关文章

  • linux sed 替换

    1. linux sed -i 命令 Linux sed 命令是利用脚本来处理文本文件。 sed 可依照脚本的指令...

  • Linux 学习笔记(十四):Linux 正则表达式基础

    grep 命令 作为linux中最为常用的三大文本(awk(Linux awk教程),sed(Linux sed教...

  • LINUX sed命令的使用

    LINUX sed命令的使用 命令格式 sed常用命令 sed替换标记 sed元字符集 已匹配字符串标记& ⼦串匹...

  • Linux命令之sed批量替换字符串操作

    Linux中sed命令功能强大,本文将详细介绍如何使用sed命令进行字符串替换。一、基本的替换命令格式1:sed ...

  • Linux系列开坑记(三)-流处理器sed

    今天我们聊一聊Linux 下sed 命令,sed是linux非常强大的命令,可以对数据进行替换,删除,新增等操作。...

  • Linux 命令之 sed

    sed 的全称是 stream editor,是支持正则表达式的流编辑器。其作用便是将文本文件或来自于管道符传入的...

  • Linux命令之sed

    以行为单位的新增/删除 将 /etc/passwd 的内容列出并且列印行号,同时,请将第 2~5 行删除! 在第一...

  • linux命令之sed

    简介 sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,sed编辑器逐行处...

  • Linux命令之sed

    sed是一种流编辑器,他是文本处理中的工具,能够完美配合正则表达式使用。处理时,把当前处理的行存储在临时缓存区中,...

  • Linux命令之Sed

    以行为单位的新增/删除 删除 新增 a->目标行后面添加,i ->目标行前面添加 以行为单位的替换与显示 c p ...

网友评论

      本文标题:linux命令之sed

      本文链接:https://www.haomeiwen.com/subject/ybeluftx.html