zoukankan      html  css  js  c++  java
  • linux命令---sed

    用途

    sed, 流编辑, 可以用来分析standard input, 还可以将数据进行取代, 删除, 新增, 取特定行.

    用法

    sed -nefr action

    选项与参数:

      -n: 在一般sed用法中, 所有来自stdin的数据一般都会被列出到屏幕上, 但如果加上-n参数, 则只有经过sed特殊处理的那一行(或动作)才会被列出来.

      -e: 直接在指令列模式上进行sed的动作编辑

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

      -r: sed的动作支持的延伸型正则表示法的语法

      -i: 直接修改读取的档案内容, 而不是有屏幕输出

    动作说明: [n1, n2]function

      a: 新增, a的后面可以接字符串, 这些字符串会在新的一行出现(目前的下一行)

      c: 取代, c后面可以解字符串, 这些字符串可以取代n1, n2之间的行

      i: 插入, i的后面可以接字符串, 这些字符串会在新的一行出现(目前的上一行)

      p: 打印, 将某个选择的数据印出(通常与-n一起)

      s: 取代, 可以直接进行取代(通常搭配正则表示法)

    示例

      1. 将/etc/passwd的内容列出并打印行号, 同时, 删除第2~5行

    nl /etc/passwd | sed '2,5d'

      2. 承上题, 在第二行后加上'drink tea'字样

    nl /etc/passwd | sed '2a drink tea'

      3. 在第二行前增加多行

    nl /etc/passwd | sed '2a Drink tea or ...> drink beet?'

      4. 将第2-5行的内容取代为'No 2-5 number'

    nl /etc/passwd | sed '2,5c No 2-5 number'

      5. 仅列出第5-7行

    nl /etc/passwd | sed -n '5,7p'

    <未完>

  • 相关阅读:
    骨灰级程序员20条编程经验
    js常用正则表达式
    css样式大全(整理版)
    ASP.NET中常用的26个优化性能方法
    C# 中的委托和事件
    Page的ResolveClientUrl与ResolveUrl读取路径
    层设定固定高度,内容超过高度,自动延伸
    Catalan数(卡塔兰数)
    称球问题
    zabbix分布式监控系统安装配置
  • 原文地址:https://www.cnblogs.com/ezhengnan/p/3754841.html
Copyright © 2011-2022 走看看