VMware 中的 Bash 脚本检查 2 个不同的输入

VMware 中的 Bash 脚本检查 2 个不同的输入

我需要为 NFS 请求第二个参数。我有标记为 NFS 的 vswitch。我已经请求 IP,但现在我需要请求交换机,例如 NFS01、NFS02。我需要一些逻辑方面的帮助。我对 bash 还很陌生,所以请慢慢说,尽量不要含糊其辞。

#!/bin/ash -v



E_NOARGS=65

if [[ -z "$1" ]]
then
echo "Usage: ./`basename $0` [IP_Address]"
exit $E_NOARGS
fi

esxcfg-vswitch -m 9000 vSwitch2
esxcfg-vswitch -l
esxcfg-nics -l
sleep 15
esxcfg-vswitch -A NFS vSwitch2
sleep 10
esxcfg-vswitch -p NFS -v 20 vSwitch2
sleep 10
esxcfg-vmknic -a -i "$1" -n 255.255.255.0 -m 9000 NFS
sleep 10
vmkping -s 9000 192.168.9.3

答案1

不确定我是否真的理解了您的要求,但以下内容可能对您有用......

if [ $# != 2 ]; then
  echo "Usage: ./`basename $0` [IP_Address] [switch]"
  exit $E_NOARGS
fi

然后在需要指定开关值的任何地方使用 $2。

相关内容