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

    1.d命令

    命令d用于删除输入性。sed先将输入行从文件赋值到模式空间里。然后对该行运行sed命令,最后将模式空间里的内容显示在屏幕上。假设发出的是命令d。当前模式空间里的输入会被删除。不被显示。

    sed '$d' datafile
    #删除最后一行。其余的都被显示
    
    sed '/my/d' datafile
    #删除包括my的行,其余的都被显示

    2. 基本sed编程举例

    使用p(rint)显示行: sed -n '2p' temp.txt   仅仅显示第2行,使用选项n
    打印范围:  sed -n '1,3p' temp.txt         打印第1行到第3行
    打印模式:  sed -n '/movie/'p temp.txt     打印含movie的行
    使 用模式和行号查询:  sed -n '3,/movie/'p temp.txt   仅仅在第3行查找movie并打印
    显示整个文件:  sed -n '1,$'p temp.txt       $为最后一行
    随意字符:  sed -n '/.*ing/'p temp.txt     注意是.*ing,而不是*ing
    打印行号:  sed -e '/music/=' temp.txt
    附加文本:(创建sed脚本文件)chmod u+x script.sed,运行时./script.sed temp.txt
    #!/bin/sed -f
    /name1/ a/             #a/表示此处换行加入文本
            HERE ADD NEW LINE.     #加入的文本内容
    插入文本: /name1/ a/ 改成 4 i/ 4表示行号,i插入
    改动文本: /name1/ a/ 改 成 /name1/ c/ 将改动整行,c改动
    删除文本: sed '1d' temp.txt  或者 sed '1,4d' temp.txt
    替 换文本: sed 's/source/OKSTR/' temp.txt     将source替换成OKSTR
    sed 's//$//g' temp.txt             将文本中所有的$符号所有删除
    sed 's/source/OKSTR/w temp2.txt' temp.txt 将替换后的记录写入文件temp2.txt
    替换改动字符串: sed 's/source/"ADD BEFORE" &/p' temp.txt
    结果将在source字符串前面加上"ADD BEFORE",这里的&表示找到的source字符并保存
    sed结果写入到文件: sed '1,2 w temp2.txt' temp.txt
    sed '/name/ w temp2.txt' temp.txt
    从文件里读文本: sed '/name/r temp2.txt' temp.txt
    在每列最后加文本: sed 's/[0-9]*/& Pass/g' temp.txt
    从 shell向sed传值: echo $NAME | sed "s/go/$REP/g"   注意须要使用双引號

    3.基本sed编辑命令:

    p      打印匹配行                       c    用新文本替换定位文本
    =      显示文件行号                   s     使用替换模式替换对应模式
    a     在定位行号后附加新文本信息         r     从还有一个文本中读文本
    i     在定位行号后插入新文本信息         w     写文本到一个文件
    d      删除定位行                       q     第一个模式匹配完毕后退出或马上退出
    l       显示与八进制ASCII代码等价的控制字符   y  传送字符
    n     从还有一个文本中读文本下一行,并附加在下一行   {}     在定位行运行的命令组
    g     将模式2粘贴到/pattern n/

  • 相关阅读:
    IOS网络请求框架AFNetworking和ASIHttpRequest对比
    objc_msgSend消息传递学习笔记 – 消息转发
    iOS开发之OCR光学识别储蓄卡以及信用卡
    iOS 符号表恢复 & 逆向支付宝
    模仿某网站招聘列表
    Winform在线更新
    WCF局域网内使用代理无法访问解决方法
    【JavaScript】又一神器框架:linq.js
    数组去重和两个数组求交集
    【写给大家看的CSS】定位元素:使用position/display布局
  • 原文地址:https://www.cnblogs.com/mqxnongmin/p/10967788.html
Copyright © 2011-2022 走看看