zoukankan      html  css  js  c++  java
  • sed笔记

    (1)替换匹配行中的部分字符串
    实例:将文件data中value替换为key

    在这里插入图片描述
    (2)替换匹配行中的从某一部分到末尾的那部分
    实例:将文件data中的passwd替换为变量a的值
    在这里插入图片描述

    实例2:使用c操作来实现
    在这里插入图片描述
    在这里插入图片描述

    或者如下方式亦可:
    在这里插入图片描述

    (3)带有路径等特殊符号的替换,仅限于替换操作
    如果有”/”,
    (1)可以使用转义;
    (2)或者使用其他的特殊符号(非英文字母),比如“@#”等,
    经过测试发现,在特殊字符中,不能使用如下字符(执行命令符、感叹号,美元符,单引号,双引号)
    ! $ “ ‘ ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190330100045645.png) (4)sed操作中有些需要转义的字符 需要转义的符号如下: ! $ * [ “ . /
    sed “s/hello!horld/howareyou/g” data_sed_test
    sed “s/hello$horld/howareyou/g” data_sed_test
    sed “s/hello*horld/howareyou/g” data_sed_test
    sed “s/hello[horld/howareyou/g” data_sed_test
    sed “s/hello"horld/howareyou/g” data_sed_test
    sed “s/hello.horld/howareyou/g” data_sed_test
    sed “s/hello/horld/howareyou/g” data_sed_test
    sed “s/hello`horld/howareyou/g” data_sed_test
    注意:其中需要两个反斜线()才能进行转义
    sed -n “s/hello\horld/howareyou/g” data_sed_test
    (5)其他
    1、在第一行前插入文本
    sed -i ‘1 i插入字符串’ filename

    2、在最后一行插入
    sed -i ‘$ a插入字符串’ filename

    3、在匹配行前插入
    sed -i ‘/pattern/ i “插入字符串”’ filename

    4、在匹配行后插入
    sed -i ‘/pattern/ a “插入字符串”’ filename

    5、删除文本中空行和空格组成的行以及#号注释的行
    grep -v ^# filename | sed /1*KaTeX parse error: Expected group after '^' at position 11: /d | sed /^̲/d

    6、删除行首空格
    sed ‘s/2//g’
    说明:
    此种方法是sed命令标准的替换命令操作,以s开头,g表示全部替换。
    由于是删除行首空格,所示使用^操作符,方括号总的空格或tab中的任意一种,这是正则表达式的规范。
    中括号右边是
    ,表示一个或多个。
    整体意思是:用空字符去替换一个或多个用空格或tab开头的本体字符串

    7、删除行末空格
    sed ‘s/[ ]*$//g’
    和上面稍微有些不同是前面删除了^符,在后面加上了美元符,这表示以xx结尾的字符串为对象。
    但是要注意在KSH中,Tab并不是 而是直接打入一个Tab就可以了。

    8、删除所有的空格
    sed s/[[:space:]]//g


    1. [:space:] ↩︎

    2. ↩︎

  • 相关阅读:
    记sql语句
    thinkPHP小记
    php操作目录和文件
    ubuntu搭配lamp
    phpStorm实用快捷键
    在wamp中www的文件夹(项目)打不开解决办法
    php正则表达式
    远程桌面,出现身份验证错误,要求的函数不正确,这可能是由于CredSSP加密Oracle修正
    discuz增加中文验证码
    react webpack 环境配置
  • 原文地址:https://www.cnblogs.com/yldf/p/11900001.html
Copyright © 2011-2022 走看看