zoukankan      html  css  js  c++  java
  • linux 三大利器 grep sed awk sed

     sed主要内容和原理介绍

    sed 流处理编辑器

    • sed一次处理一行内容,读入一行处理一行
    • sed不改变文件内容(除非重定向)

    sed 

    • 命令行格式

        $ sed [options] 'command' file(s) (option:参数 ,command 操作命令 ,file操作文件命令)

        option : -e , -n

        command : 行定位(正则)+sed命令(操作)

    • 脚本格式

        $ sed -f scriptfile file(s)

    sed 操作命令

    • 基本操作命令

        p(打印相关的行)

           1.1 sed 'p' passwd #会打印出两行,因为sed的原理是读入一行,输出一行,此处再加上p命令打印出来的一行,所以最后会打印出两行

                     1.2 sed -n 'p'passwd #加了-n选项之后,只会打印出相关的行,那些不相关的行则不会打印出来 二、行定位

           行定位 :

                           定位一行: x;  /pattern/  加入x定位到第x行,也可加入正则定位目标行

           定位多行 :x,y ; /pattern/,y  定位到x到y行,或者定位到有正则pattern的行到y行

                /pattern1/,/pattern2/; 定位到有正则pattern1的行到有正则pattern2的行

                x,y! 定位到除x到y行的其他行

           定位间隔行:first~step 定位到first行,在每隔step行输出一行

          sed -n '/ff/!p' file

          sed -n '/news/,/mooc/p'  file---从news行开始到mooc行截至范围

          sed -n '10,20!p'  file---10-20行不打印

          sed -n '10~3p' file---10行开始,跳跃3行输出

         a(新增行)/i(插入行)

         c(替代行)

            d(删除行)

                           sed '5a======' file#在第5行的下面新增一行,并写入======这些内容   

           sed '1,5i======' file 表示在1-5行前面插入一行,并写入======这些内容   

           sed '1,5c======' file 将1-5行改变成一行====

               sed '1,5d' file 删除1-5行

  • 相关阅读:
    告诉自己的十大忠告
    深度学习框架
    深度学习-Caffe编译测试的小总结
    深度学习-Windows平台下的Caffe编译教程
    C#中使用多款LevelDB.Net封装测试性能
    LevelDB初体验测试
    机器学习-分类器-Adaboost原理
    机器学习-分类器-级联分类器训练(Train CascadeClassifier )
    C# Directory.GetFiles()获取多个类型格式的文件
    部分Android或IOS手机拍照后照片被旋转的问题
  • 原文地址:https://www.cnblogs.com/lukechenblogs/p/8630169.html
Copyright © 2011-2022 走看看