##!/usr/bin/env bash
# 申请IP数组
declare -a ip_array
ip_array=(0 0 0 192.1.1.1 192.1.1.2 192.1.1.3)
declare -a username_array
username_array=(root root root ubuntu03 bear bear)
# ${#ip_array[*]} 这个变量保存了ip_array数组的长度
echo "****************************************************"
echo "Tips: 已有的主机共"${#ip_array[*]}"个,索引参数请不要超出主机最大值!"
echo "****************************************************"
# $@ 是一个输入参数的数组
for num in $@
do
# 判断变量是数字字符串 [[ $num =~ ^(-)?[0-9]+$ ]]
if ! [[ $num =~ ^(-)?[0-9]+$ ]]; then
echo "输入参数包含字符串,请重新输入!">&2; exit 1
elif [ $num -ge ${#ip_array[*]} ] || [ $num -le 2 ] ; then
echo "输入数字不在[3," ${#ip_array[*]} "]区间内,请重新输入!" >&2; exit 1
fi
done
for i in $@
do
echo "正在连接"${ip_array[$i]}
ssh -p 22 ${username_array[$i]}@${ip_array[$i]}
done
echo "****************************************************"
echo "Script ended successfully!!!"
echo "****************************************************"
Bash脚本
于 2022-09-03 20:41:44 首次发布