zoukankan      html  css  js  c++  java
  • sed 找出含有某个字符串的行 注释掉

    1、源文件例子

    [root@node1 ~]# cat /etc/fstab
    
    #
    # /etc/fstab
    # Created by anaconda on Mon Mar  1 18:32:15 2021
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    /dev/mapper/centos-root /                       xfs     defaults        0 0
    UUID=3fa2b010-61bc-480e-bd49-cb7bee120fe3 /boot                   xfs     defaults        0 0
    /dev/mapper/centos-swap swap                    swap    defaults        0 0
    [root@node1 ~]#

    2、cp一个文件出来  测试修改  fs.txt

    sed -i '/swap/s/^/#/g' fs.txt

    3、diff看一下  ok了

    [root@node1 ~]# diff fs.txt /etc/fstab
    11c11
    < #/dev/mapper/centos-swap swap                    swap    defaults        0 0
    ---
    > /dev/mapper/centos-swap swap                    swap    defaults        0 0
    [root@node1 ~]# cat /etc/fstab

     4、如果要幂等执行 得判断是否被注释过了  如果注释过了 则不执行  不然就执行 然后再判断  这个适合用 until 命令

    until grep swap fs.txt  |grep "#" >/dev/null;do echo "disable swap" && sed -i '/swap/s/^/#/g' fs.txt;done

    5、测试OK  换成实际环境 就是下面的  可以重复执行  

    until grep swap /etc/fstab  |grep "#" >/dev/null;do echo "disable swap" && sed -i '/swap/s/^/#/g' /etc/fstab;done
  • 相关阅读:
    itoa
    sprintf用法 [转载]
    atoi 与 itoa的实现
    数组排序总结(冒泡,选择,插入,希尔)
    XML入门精解之文件格式定义(DTD)
    malloc()函数的工作机制 结构体的总结
    字符串指针与字符数组(ZT)
    sprintf函数你了解有多深!
    sprintf
    sql ldr 笔记
  • 原文地址:https://www.cnblogs.com/xlovepython/p/14487619.html
Copyright © 2011-2022 走看看