zooper集群结构:
主机名 角色
node1 follower
node2 leader
node3 follower
master observer
脚本内容:
#!/bin/bash
function getstatus(){
#定义一个函数
exec 9<>/dev/tcp/$1/2181 2>/dev/null
#打开host的port 可读写的socket连接,与文件描述符9连接
echo stat >&9
#将“stat”发送给socket连接
MODE=$(cat <&9 |grep -Po "(?<=Mode:).")
#从socket返回数据中提取Mode的值,并赋值给MODE
exec 9<&- #关闭通道
echo ${MODE:-NULL}
#输出MODE*
}
for i in node{1..3} nn01;do
echo -ne "${i}\t"

  • #输出i,不换行并执行tab键打一个空格
    getstatus ${i}
    #执行函数 getstatus并给位置变量赋值 *
    done

脚本执行结果:
node1 follower
node2 leader
node3 follower
master observer