前言:
最近写了个服务部署脚本,为了简化操作,我把脚本的执行命令全部封装到脚本中,这样在部署的时候,小伙伴只需要通过输入不同的选择,就可以完成部署,这样也避免操作失误,对环境产生影响;
首先我们来看一下,写一个交互式脚本需要了解shell哪些知识?
1.shell-变量;
2.shell-参数传递;
3.shell-流程控制;
4.shell-函数;
5.shell-输入输出;
6.shell-文件读取;
7.shell-结束指令;
demo.sh
choose_environment() {
# 重新选择
reselect=${1}
if [ $reselect == 0 ];then
echo '请选择要操作的环境: '
elif [ $$reselect == 1 ];then
echo '请重新选择要操作的环境: '
fi
echo '1.开发环境'
echo '2.测试环境'
echo 'q.结束'
# 获取用户的输入
read -p '请输入序号, 选择环境: ' -n 1 environmentnum
echo '\n'
# 这里注意,判断空必须加双引号,双引号识别为没有内容;主要处理没有输入指令直接回车
if [ -z "$environmentnum" ];then
choose_environment 0
elif [ $environmentnum == 1 ];then
echo '进入开发环境操作'
elif [ $environmentnum == 2 ];then
echo '进入测试环境操作'
elif [ $environmentnum == 'q' ];then
echo '欢迎再次使用'
# 结束脚本执行
exit 1
else
echo '不支持的序号'
echo $environmentnum
choose_environment 1
fi
}
choose_environment 0
上面部分代码写了注释:
我们对上面用到的指令进行一一解释它的作用: