首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bash脚本中的用户输入?

Bash脚本中的用户输入?
EN

Stack Overflow用户
提问于 2021-02-07 15:42:13
回答 1查看 104关注 0票数 0

我如何才能获得下面这样的用户输入,我想在shell脚本中使用它来构建case条件?

代码语言:javascript
复制
./iwant2reload-worker.sh --target=cluster --cluster-name=abc
./iwant2reload-worker.sh --target=workernode --workernode-name=xyz

例如:如果用户发出第一条命令,它需要运行程序a;如果用户发出第二条命令,它需要运行程序b。

EN

回答 1

Stack Overflow用户

发布于 2021-02-07 16:09:10

代码语言:javascript
复制
#!/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
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66085605

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档