被简单Shell脚本震惊的一个下午

博主在学习分布式过程中,因重装电脑需重新搭建虚拟机环境。看到脚本可简化操作后激发学习欲望,学习Zookeeper时模仿视频写脚本,遇到启动需输密码问题,经百度操作实现免密登录,还仿写脚本查询进程号,后续将深入学习Bash脚本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近开始在学习分布式,因为之前电脑崩掉了,重装后导致之前所搭建的环境都没了,这不重新搭建了虚拟机;

起因

以前也见过脚本,但没有仔细的去跟着敲,总觉得这玩意儿得技术高深莫测的人才能碰。直到今天我看到它对曾经十分繁琐的操作能简化到敲敲回车的地步,间接的激发了我学习脚本的欲望(ps:连分布式都没学好,又给自己挖坑了)

经过

今天浅尝了一下这颗语法糖(也不知道这样的形容对不对,欢迎指正),午后时分打开视频打算学习一下zookeeper,学着学着,我发现为什么up启动多台机子的zk不需切换,然后再起,可以在一台机子上同时启动三台zk,这就引起我的兴趣了啊。我回看视频发现up写了一个脚本,我便仿照着也写了一遍。

#!/bin/bash
	case $1 in
"start"){
        for i in zytCentos zytCentosClone1 zytCentosClone2
        do
                echo ----------- zookeeper $i 启动 ----------------------
                ssh $i "/opt/software/zk/zookeeper-3.5.7/bin/zkServer.sh start"
        done
}
;;
"stop"){
        for i in zytCentos zytCentosClone1 zytCentosClone2
        do
                echo ----------- zookeeper $i 停止 ----------------------
                ssh $i "/opt/software/zk/zookeeper-3.5.7/bin/zkServer.sh stop"
        done
}
;;
"status"){
        for i in zytCentos zytCentosClone1 zytCentosClone2
        do
                echo ----------- zookeeper $i 状态 ----------------------
                ssh $i "/opt/software/zk/zookeeper-3.5.7/bin/zkServer.sh status"
        done
}
;;
esac

写完以后问题又来了,我和它明显效果不一样啊,我启动脚本后每台机子登录我还得输入密码,那我还不如直接在对应机子上进行启动,这么麻烦干啥?我就开始了百度之旅,喏,就找到了下面这篇文章,按照这篇文章的一通操作后,我终于实现了up的操作。
注意:如果直接写域名的话,要记得去hostname里面把对应的ip加上
虚拟机间实现免密登录
同时,我还自己进行了仿写,在一台机子上查询所有机子的进程号,脚本如下:

#!/bin/bash
echo ================= 查询当前所有服务器的jps情况 =======================

        for i in zytCentos zytCentosClone1 zytCentosClone2
        do
                echo *************** $i当前jps情况 *****************
                ssh $i "/opt/software/jdk/jdk1.8.0_144/bin/jps"
        done
echo ========================= 查询完毕 ==================================

当然,目前还是在学习当中,等稍微再学懂一点,会好好的唠一唠Bash脚本语言;
带个链接优快云上找的一个学习笔记
2022.4.9更新,原来这是叫shell脚本,bash是shell的一种,linux默认用bash

许愿美团过🙏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值