zoukankan      html  css  js  c++  java
  • Linux日常之命令sed

    一. 命令sed简介

      利用命令sed能够同时处理多个文件多行的内容,可以不对原文件改动,仅把匹配的内容显示在屏幕上,也可以对原文件进行改动,但是不会在屏幕上返回结果,若想查看改动后的文件,可以使用命令cat等。

    二. 语法格式

      1. sed的命令格式:sed [options] command file

      2. sed的脚本格式:sed [options] -f script file

      

    三. options选项

      1. -n,只打印模式匹配的行

      2. -f,将sed的动作写在一个文件内

      3. -i,直接修改文件内容

    四. command命令

      1. p,打印匹配行(一般与选项-n合用)

      2. =,显示文件行号

      3. a,在定位行号后,添加新文本信息

      4. i,在定位行号前,插入新文本信息

      5. d,删除定位行

      6. c,用新文本替换定位文本

      7. w filename,写文本到一个文件,类似输出重定向

      8. r filename,从另一个文件中读文本,类似输入重定向

      9. s,使用替换模式替换相应模式

      10. q,第一个模式匹配完成后立即退出

      

    五. 实例

      1. 仅打印出文件test.txt的第2行,则有

        

        注意,若没有选项“-n”,则会显示整个文件,且第2行会显示两遍。所以,如果仅仅想要显示第2行,则要添加选项“-n”。

      2. 若要显示文件test.txt的第2行到第5行,则有

        

      3. 显示出带有字符串“grep”的行,则有

        

      4. 显示出从匹配字符串“is”到匹配字符串“abc”之间的行,则有

        

        注意,这里匹配字符串时,是按照第一次出现的行来定的。

        当第二个字符串不存在时,则显示从第一个字符串到最后

        

      5. 显示出文件test.txt中第1行到第4行的内容,同时显示出行号,则有

        

        注意,当使用命令sed中不同的编辑命令时,用{},且不同命令之间用“;”隔开!

      6. 显示除了第1行到第4行外的其它内容,则用“!”取反

        

      7. 打印出非空行,则有

        

      8. 删除以“this”开头的行和空行,则有

        

        注意,命令sed支持对单个文件实现不同的操作,每个操作使用选项“-e”

      9.  在匹配字符串“grep”的行首添加字符串“first”,则有

        

      10. 将文件test.txt中的所有字符串“grep”后添加字符串“ddd”,则有

        

      11. 在匹配字符串“grep”的行后添加一行“Hello World”,则有

        

      12. 若在匹配字符串“grep”的行后添加两行“Hello”、“World”,则使用转义符

        

      13. 在第1行到第3行的行首添加“#”,则有

        

      14. 将文件test.txt中的字符串“grep”替换为字符串“ddd”,则有

        

        注意,可以发现,此处替换的仅仅是定位行的第一个匹配的字符串“grep”,且是将整个文件都显示在屏幕中的,而不是仅显示匹配行。

      15. 若将定位行中所有的匹配字符串“grep”都替换为字符串“ddd”,则有

        

      16. 若要将所做改动直接写入文件test.txt中,则使用选项“-i”

        例如,将文件的行首添加字符串“Start ”,则有

        

  • 相关阅读:
    安卓下拉,刷新
    Android继承AppCompatActivity实现全屏设置
    端口被占用:android studio 虚拟机adb.exe已停止工作的处理
    学习笔记
    github上的文件比对
    框架:提供一定能力的小段程序
    游戏中实现粒子碰撞,纯java
    一个仿3D的平面游戏页面
    多媒体流处理,安卓进阶之路
    空间主页播放任意FLV格式视频方法
  • 原文地址:https://www.cnblogs.com/jiqianqian/p/7977777.html
Copyright © 2011-2022 走看看