• Linux shell修改xml文件


    1. xml文件一般都是key-value形式 , 那么我们需要先定位到key ,再取下一行进行整体替换

    #!/bin/bash
    #需要修改的value的 key
    a=ha.zookeeper.quorum
    #需要修改成的值
    b="node1:2181;node2:2181;node3:2345"
    #文件路径
    file=/home/abby/core-site.xml
    sed -i "/>$a</{n;s#.*#        <value>$b</value>#}" $file

    a= 这个是放key

    b= 这个是放value ,我这里加引号是为了防止需要转义字符

    file= 这个是文件路径

    我的源文件是这样

    <property>
               <name>fs.defaultFS</name>
               <value>hdfs://cluster</value>
         </property>
         <property>
               <name>hadoop.tmp.dir</name>
               <value>/home/abby/hdfs/tmp</value>
         </property>
         <property>
                <name>ha.zookeeper.quorum</name>
            <value>node1:2181;node2:2181;node3:2181</value>
        </property>

    PS:  有时候我们安装zookeeper的时候 , myid 是根据机器不同也有区别

      这时候利用redis 的任何地方访问

      a=`redis-cli -h 192.168.1.X -p 6379 get ip_zk_myid `

      然后放入进去 ,这是一种任何机器获取全局共享变量的一种实现

      可以根据自己的IP , 去redis服务器获取自己想要的配置然后修改

      自动化脚本 .

  • 相关阅读:
    BBB-media配置
    BBB-添加文章及文章中图片
    inclusion_tag模块
    BBB-登录注册
    Django-auth模块
    Django-csrf中间件
    基于django中settings中间件源码思想,实现功能的插拔式设计
    Django之中间件
    Django之cookie与session
    java中public与private还有protect的区别
  • 原文地址:https://www.cnblogs.com/alpha-cat/p/13094862.html
Copyright © 2020-2023  润新知