我有这个脚本:
#!/bin/bash
USERS=("user1.com" "user2.co.uk" "user3.com")
PASSES=("pass1" "pass2" "pass3")
for i in ${USERS[@]}; do
echo ${PASSES[i]};
done
运行此脚本输出:
my-script.sh:第 6 行:user1.com:语法错误:算术运算符无效(错误标记为“.com”)
但是,我的值用引号括起来,据我所知,echo
这不是算术运算。
来自 PHP 背景,这令人困惑。在 PHP 中,我们可以这样做:
echo gettype($string);
echo gettype($int);
哪个输出
字符串
整数
然而,报价似乎并不像我想的那样。如何强制使用字符串而不是对待user1.com
as user1
.
com
?