我有这个问题:跑步时
./choose_words.sh $NWORDS_s1 $NWORDS_s2 $NWORDS_s3 $NWORDS_s4
在choose_words中,执行nwords=($1 $2 $3 $4)
后,$4
似乎不包含任何值。所以,如果尝试打印:
echo ${nwords[4]} # I get nothing from this
如果我尝试打印echo ${nwords[*]}
,则数组nwords
实际上具有第四个元素及其实际值。
这对你有意义吗?
答案 0 :(得分:3)
数组索引从0
开始,因此您需要使用${nwords[3]}
来获取数组的第四个元素。
答案 1 :(得分:3)
数组索引从0开始,而不是1;)
即:
echo ${nwords[0]} # This is the 1st element, corresponding to $1
echo ${nwords[1]} # This is the 2nd element, corresponding to $2
echo ${nwords[2]} # This is the 3rd element, corresponding to $3
echo ${nwords[3]} # This is the 4th element, corresponding to $4