zoukankan      html  css  js  c++  java
  • sed的惯常用法

    1:注释掉某一行
    这个经常会遇到的,把配置文件里某一行注释掉。让他不起作用。
    sed -i -e ’121 s/^/#/’ /usr/local/apache2/conf/httpd.conf
    上面一行命令的意思,就是把121行注释掉。
    sed -i -e ’121 s/^/#/’ -i -e ’122 s/^/#/’ /usr/local/apache2/conf/httpd.conf
    这个就是把121,122行注释掉。

    2:把注释#去掉,让这行起作用
    sed -i ‘s/#ServerName www.example.com:80/ ServerName www.example.com:80/g’ /usr/local/apache2/conf/httpd.conf
    这个命令就是把这行的#去掉。其实就是一个替换的过程

    3:在某行的位置插入一行

    如果只是在一个文档后面追加一行,那很简单。>> 就可以搞定。不过如果是在指定的某一行里插入。
    sed -i "8 s/^/alias vi=’vim’/" /root/.bashrc
    就是在第8行插入 alias vi=’vim’

    4:如何插入一行,包括特殊字符 /
    sed -i "58 s/^/AddType application/x-httpd-php .php .phtml/" httpd.conf
    这样就让apache支持php,简单多了。
    下面的用法还没有测试。改天测试

    Sed:
    1、删除行首空格
    sed ‘s/^[ ]*//g’ filename
    sed ‘s/^ *//g’ filename
    sed ‘s/^[[:space:]]*//g’ filename

    2、行后和行前添加新行
    行后:sed ‘s/pattern/& /g’ filename
    行前:sed ‘s/pattern/ &/g’ filename
    &代表pattern

    3、使用变量替换(使用双引号)
    sed -e "s/$var1/$var2/g" filename

    4、在第一行前插入文本

    sed -i ’1 i插入字符串’ filename

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

    6、在匹配行前插入
    sed -i ‘/pattern/ i "插入字符串"’ filename

    7、在匹配行后插入
    sed -i ‘/pattern/ a "插入字符串"’ filenam

  • 相关阅读:
    CentOS7.5右键创建空白文档
    CentOS7.5安装配置conky(极简)
    CentOS7.5安装nodejs
    CentOS7.5安装网易云音乐
    CentOS7.5删除旧的内核
    CentOS7.5安装notepadqq
    CentOS7英文环境下使用中文输入法
    CentOS7安装Pycharm后无法使用日常的快捷键
    tomcat的work目录作用
    ORACLE获取某个时间段之间的月份列表
  • 原文地址:https://www.cnblogs.com/xieqianli/p/4219669.html
Copyright © 2011-2022 走看看