Linux xsync命令脚本
2023-06-13 09:11:19 时间
大家好,又见面了,我是你们的朋友全栈君。
在 /bin/目录下创建 xsync
首先 :yum install -y rsync
脚本如下:
#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历集群所有机器
for host in master node1 node2
do
echo ==================== $host ====================
#3. 遍历所有目录,挨个发送
for file in $@
do
#4. 判断文件是否存在
if [ -e $file ]
then
#5. 获取父目录
pdir=$(cd -P $(dirname $file); pwd)
#6. 获取当前文件的名称
fname=$(basename $file)
ssh $host "mkdir -p $pdir"
rsync -av $pdir/$fname $host:$pdir
else
echo $file does not exists!
fi
done
done
给xsync文件赋予执行权限:
chmod 777 xsync
然后执行 : sudo xsync 目录
如:将 master机器/opt下的scp复制到 node1 node2
[root@master bin]# xsync /opt/scp
-bash: /usr/local/bin/xsync: /bin/bash^M: 坏的解释器: 没有那个文件或目录
[root@master bin]# sudo xsync /opt/scp
==================== master ====================
sending incremental file list
sent 134 bytes received 18 bytes 304.00 bytes/sec
total size is 49 speedup is 0.32
==================== node1 ====================
sending incremental file list
sent 134 bytes received 18 bytes 304.00 bytes/sec
total size is 49 speedup is 0.32
==================== node2 ====================
sending incremental file list
sent 130 bytes received 18 bytes 296.00 bytes/sec
total size is 49 speedup is 0.33
[root@master bin]# cd
[root@master ~]# xsync /opt/scp
-bash: /usr/local/bin/xsync: /bin/bash^M: 坏的解释器: 没有那个文件或目录
[root@master ~]# sudo xsync /opt/scp
==================== master ====================
sending incremental file list
sent 130 bytes received 18 bytes 296.00 bytes/sec
total size is 49 speedup is 0.33
==================== node1 ====================
sending incremental file list
sent 134 bytes received 18 bytes 304.00 bytes/sec
total size is 49 speedup is 0.32
==================== node2 ====================
sending incremental file list
sent 134 bytes received 18 bytes 304.00 bytes/sec
total size is 49 speedup is 0.32
[root@master ~]# cd /opt/
[root@master opt]# cd scp/
[root@master scp]# ll
总用量 4
-rw-r--r-- 1 root root 45 12月 11 21:06 1.html
drwxr-xr-x 2 root root 22 12月 11 21:38 abc
[root@master scp]# mkdir aaaaa
[root@master scp]# cd aaaaa/
[root@master aaaaa]# vi aa.text
[root@master aaaaa]# cd
[root@master ~]# sudo xsync /opt/scp
==================== master ====================
sending incremental file list
sent 183 bytes received 19 bytes 404.00 bytes/sec
total size is 62 speedup is 0.31
==================== node1 ====================
sending incremental file list
scp/
scp/aaaaa/
scp/aaaaa/aa.text
sent 249 bytes received 48 bytes 594.00 bytes/sec
total size is 62 speedup is 0.21
==================== node2 ====================
sending incremental file list
scp/
scp/aaaaa/
scp/aaaaa/aa.text
sent 249 bytes received 48 bytes 594.00 bytes/sec
total size is 62 speedup is 0.21
[root@master ~]# cd
[root@master ~]# cd /bin/
[root@master bin]# vi xsync
[root@master bin]#
附:
zk.sh 脚本
#!/bin/bash
case $1 in
"start"){
for i in master node1 node2
do
echo ---------- zookeeper $i 启动 ------------
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh start"
done
};;
"stop"){
for i in master node1 node2
do
echo ---------- zookeeper $i 停止 ------------
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh stop"
done
};;
"status"){
for i in master node1 node2
do
echo ---------- zookeeper $i 状态 ------------
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh status"
done
};;
esac
附:
jpsall.sh 脚本:
#!/bin/bash
# 执行jps命令查询每台服务器上的节点状态
echo ======================集群节点状态====================
for i in master node1 node2
do
echo ====================== $i ====================
ssh $i "/opt/jdk/jdk1.8.0_202/bin/jps"
done
echo ======================执行完毕====================
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/137280.html原文链接:https://javaforall.cn
相关文章
- 安利一款Python开发的仿Linux树形显示目录tree命令「建议收藏」
- linux查看udp端口占用命令,详解Linux查看端口占用「建议收藏」
- 如何在Linux系统中查看进程的父进程(linux查看进程父进程)
- Linux下归档命令完全指南(linux归档命令)
- Linux开放端口操作简易指南(linux开放端口命令)
- Linux定时清除文件的简单方法(linux按时间删除文件)
- Linux默认文件系统的应用与优势(linux默认的文件系统)
- 35岁Linux运维:不改变,不退步(35岁linux运维)
- 探索Linux的无穷精彩(linux.表示)
- Linux 桌面应用程序开发指南(linux桌面开发)
- 编程Linux 环境下学习C语言编程(linux下c)
- 掌握 Linux 中 vi 命令的秘诀(linux的vi命令)
- Linux下查看策略路由的方法(linux查看策略路由)
- Linux下查找特定字符串的方法(linux查找某个字符串)
- Linux下开发JSP编程指南(linux开发jsp)
- Linux实现反向代理的秘密(linux反向代理)
- nas实现Linux服务器上NAS的挂载(linux挂载服务器上)
- 命令Linux查看CPU核心数的命令(linux查看几核的)
- 一键定时关机!搞定Linux关机脚本的神器!(linux关机脚本)
- Linux之Vi详解(linux的vi命令详解)
- Linux封装:实现简单、便捷、安全的操作体验(linux封装)
- 命令的使用Linux系统下SCP命令的应用研究(linux下scp)
- Linux中执行Shell脚本的方法(linux执行sh)
- Linux下快速建立目录的命令指南(linux建目录命令)
- 压缩高手必备:Linux下的压缩命令大全(linux下压缩命令)
- 学习Linux命令的有效方法。(怎么学习linux命令)