写一个脚本,完成如下功能:

说明:此脚本能够为指定网卡创建别名,则指定地址;使用格式如:mkethalias.sh -v|--verbose -i ethX

1、-i选项用于指定网卡;指定完成后,要判断其是否存在,如果不存在,就退出;

2、如果用户指定的网卡存在,则让用户为其指定一个别名,此别名可以为空;如果不空,请确保其事先不存在,否则,要报错,并让用户重新输入;

3、在用户输入了一个正确的别名后,请用户输入地址和掩码;并将其配置在指定的别名上;

4、如果用户使用了-v选项,则在配置完成后,显示其配置结果信息;否则,将不显示;

#!/bin/bash
#此脚本用于为指定网卡创建别名;使用格式如:mkethalias.sh -v -i ethX
case $# in
'2')
if [ $1 != '-i' ] ;then echo "错误,请重新执行脚本"
exit 7
fi
if ! ifconfig -a|grep $2&>/dev/null ;then echo "没有此设备"
exit 7
else read -p "请输入别名:" bieming
fi
while  ip addr show|grep $bieming;do
echo "别名已经存在"
read -p "请输入别名:" bieming
done
read -p "请输入IP/掩码:" IP
if [ $bieming = '' ];then
ip addr add $IP dev $2
else ip addr add $IP dev $2 label $bieming
fi
;;
'3')
if [ $2 != '-i' ]||[ $1 != '-v' ] ;then echo "错误,请重新执行脚本"
exit 7
fi
if ! ifconfig -a|grep $3&>/dev/null ;then echo "没有此设备"
exit 7
else read -p "请输入别名:" bieming
fi
while  ip addr show|grep $bieming;do
echo "别名已经存在"
read -p "请输入别名:" bieming
done
read -p "请输入IP/掩码:" IP
if [ $bieming = '' ];then
ip addr add $IP dev $3
else ip addr add $IP dev $3 label $bieming
fi
ip addr show
;;
*)
exit 7
echo "错误,请重新执行脚本"
;;
esac