如何解决用户在 Bash 脚本中输入?
如何获得如下所示的用户输入,我想在我的 shell 脚本中使用它来构建案例条件?
./iwant2reload-worker.sh --target=cluster --cluster-name=abc
./iwant2reload-worker.sh --target=workernode --workernode-name=xyz
例如:如果用户发出第一个命令,它需要运行程序 a,如果用户发出第二个命令,它需要运行程序 b。
解决方法
#!/bin/bash
while [ "$1" != "" ]; do
PARAM=`echo $1 | awk -F= '{print $1}'`
VALUE=`echo $1 | awk -F= '{print $2}'`
case $PARAM in
--target)
TARGET=$VALUE
;;
--cluster-name)
CLUSTER_NAME=$VALUE
;;
--workernode-name)
WORKNODE_NAME=$VALUE
;;
*)
echo "ERROR: unknown parameter \"$PARAM\""
exit 1
;;
esac
shift
done
#==========================
if [ ${TARGET} = "cluster" ]
then
echo "Run programm A for ${TARGET} & ${CLUSTER_NAME}"
fi
if [ ${TARGET} = "workernode" ]
then
echo "Run programm B for ${TARGET} & ${WORKNODE_NAME}"
fi
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。