我正在尝试编写一个bash脚本,要求用户输入一个帐号,然后对该帐户执行操作。现在,我只是使用打印声明,直到我可以使用它。
当我尝试在if语句中添加变量时,我收到错误。
这是我的脚本(到目前为止):
#!/bin/bash
echo "What AWS Account: "
read accountnumber
echo "You entered $accountnumber"
declare -a arr=("1234556789" "1234567810")
for i in ${arr[@]}
do
if [ $i -eq 1234556789 ]; then
aws_account = "lab"
echo "You are currently in account: $aws_account"
break
elif [ $i -eq 1234567810 ]; then
aws_account = "bill"
echo "You are currently in account: $aws_account"
break
else
echo "Unkown account"
fi
done
但是当我尝试运行脚本时,我收到此错误。看起来我无法分配变量:
./delete_snapshots.sh
What AWS Account:
1234556789
You entered 1234556789
./delete_snapshots.sh: line 12: aws_account: command not found
You are currently in account:
为什么这个bash脚本认为aws_account是一个命令,而不是我想要分配的变量?如何根据用户的输入分配此变量?
另外,如何让用户在问题的同一行输入文字?
而不是:
What AWS Account:
1234556789
我如何获得:
What AWS Account: 1234556789
答案 0 :(得分:0)
在aws_account之后和=符号之后你不能有空格。