• sed简单用法


    参数说明:

    -e 以指定的script来处理输入的文本文件

    -f 以指定的script文件来处理输入的文本文件

    -h 显示帮助

    -n 仅显示script处理后的结果

    -V 显示版本信息

    -v 反选

    动作说明:

    a 新增,后面跟字符串,插入在指定行的下一行

    c 取代,后面跟字符串,可以取代n1,n2之间的行

    d 删除

    i 插入,后面跟字符串,插入在指定行的上一行

    p 打印

    s 取代

    1.添加行

      sed -e 4a ewline text.file

      sed '3a hello wold' text.txt

      sed ''

    1.打印某行 sed -n 'n'p filename

    2.打印多行 sed -n '1,$'p filename

    3.打印包含某个字符串的行 sed -n '/root/'p text.txt

      特殊字符^ $ . *也能在sed中使用

      sed -n '/^i/'p text.txt 打印以i开头的行

      sed -n '/in$/'p text.txt 打印以in结尾的行

      sed -n '/r..o/'p text.txt 打印包含r..o的行。中间2个为任意字符

      sed -n '/ooo*/'p text.txt 打印oo ooo...的行。最少匹配oo

    4.实现多个行为 -e 

      sed -e '1'p -e '/111/'p -n text.txt

    5.删除某行或这多行 d删除

      sed '1'd text.txt

      sed '1,3'd text.txt

      sed '2,$'d text.txt

      sed '/oot/' text.txt

    6.替换字符串或字符

      s替换   g 全局替换,不加只替换每行的第一个

      除了/,还可以使用其他的特殊字符如# @

      sed '2,4s/ot/to/g' text.txt 将第2行到第4行的ot替换为to

      sed 's#ot#to#g' text.txt 

      sed 's/[0-9]//g' text.txt 删除所有的数字

      sed 's/[a-zA-Z]//g' text.txt 删除所有的字母

      sed 's/[0-9a-zA-Z]//g' text.txt 删除所有的数字和字母

    7.调换2个字符的位置

      head -n 10 text.txt|sed 's/(root)(.*)(rcu_gp_kth)/321/'

      替换前

    8.增加字符串

      sed 's/^.*$/123&/' text.txt|head -n 10 在每一行的前面加上123

      sed 's/^.*$/&123/' text2.txt

    9.直接替换

    sed -i 's/:/#/g' text.txt

    mac下直接替换一直报错,解决方法:

    1. sed -ig 's/456/hello/g' text2.txt

    2. sed -i ''  's/hello/456/g' text2.txt

    3. 保存到一个文件

    sed 's/456/hello/g' text2.txt > text3.txt 

    参考:http://blog.sina.com.cn/s/blog_5fde60890101ic7r.html

     

  • 相关阅读:
    iOS 开发中的坑与相关技巧
    SDK 封装的相关看法
    线程问题---在iPad上会崩溃,在iPhone上不会崩溃
    添加新手引导页需要注意的几个小点
    iOS 七牛云上传并获取图片----【客户端】
    iOS 线程相关-----绝对de干货
    Vue.js 基础示例
    lib-flexible 结合 WKWebView 的样式错乱解决方法
    基于CommentCoreLibrary简单的弹幕实现
    页面上动态编译及执行java代码
  • 原文地址:https://www.cnblogs.com/csj2018/p/9178740.html
Copyright © 2020-2023  润新知