加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 无法在case语句bash中设置变量

发布时间:2020-12-14 00:03:58 所属栏目:Linux 来源:网络整理
导读:我正在尝试根据一堆输入条件设置变量.以下是代码的一小部分示例: #!/bin/bashINSTANCE_SIZE=""case "$1" in "micro") $INSTANCE_SIZE="t1.micro" ;; "small") $INSTANCE_SIZE="m1.small" ;;esacecho $INSTANCE_SIZE 当我使用-ex开关运行脚本并指定正确的参
我正在尝试根据一堆输入条件设置变量.以下是代码的一小部分示例:

#!/bin/bash
INSTANCE_SIZE=""
case "$1" in
   "micro")
     $INSTANCE_SIZE="t1.micro"
     ;;
   "small")
     $INSTANCE_SIZE="m1.small"

     ;;
esac
echo $INSTANCE_SIZE

当我使用-ex开关运行脚本并指定正确的参数时:

+ case "$1" in
+ =m1.small
./provision: line 19: =m1.small: command not found

解决方法

您需要删除分配中的$符号 – INSTANCE_SIZE =“m1.small”.使用美元符号,$INSTANCE_SIZE将替换为其值,并且不会发生任何分配 – bash而是尝试执行插值产生的命令.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读