如何使用带有序列号的Linux shell变量?
我定义了如下几个变量:如何使用带有序列号的Linux shell变量?,linux,Linux,我定义了如下几个变量: TEMP1=1 TEMP2=1 TEMP3=1 然后我想像这样在for循环中使用它们,但失败了。如何让它工作?将变量与序列号一起使用 for i in 0 1 2 3 do if [[ $(TEMP{i}) -eq 1 ]]; then do something 我认为您可能需要一个bash数组: #!/bin/bash temp=(1 4 9 16) for i in {0..3}; do echo ${temp[i]} done
TEMP1=1
TEMP2=1
TEMP3=1
然后我想像这样在for循环中使用它们,但失败了。如何让它工作?将变量与序列号一起使用
for i in 0 1 2 3
do
if [[ $(TEMP{i}) -eq 1 ]]; then
do something
我认为您可能需要一个bash
数组:
#!/bin/bash
temp=(1 4 9 16)
for i in {0..3}; do
echo ${temp[i]}
done
样本输出
1
4
9
16
您可能也应该避免大写变量名,因为它们是保留的
如果这离您的舒适区有点远,这可能更接近您的思维方式,但它使用了与bash
阵列相同的底层技术:
TEMP[0]=1
TEMP[1]=4
TEMP[2]=9
echo ${TEMP[2]} # echoes "9"