日期:2014-05-16  浏览次数:20655 次

shell嵌套循环的问题
有两个数组:

#!/bin/bash
USERS1=(aaa bbb ccc eee);
USERS2=(aaa bbb ddd ddd);

我要输出USER1、USER2下标相对应的内容:
aaa,aaa
bbb,bbb
ccc,ddd
eee,ddd

这样该怎么写?

还有

for i in "${USERS1[@]}"; do

done;

这里的@是什么意思?如果我在这里再写一个for,in USERS2,应该是什么样的?

------解决方案--------------------
for i in "${USERS2[@]}"; do
....
done;


------解决方案--------------------
C/C++ code
#!/bin/bash

user1=(aaa bbb ccc eee);
user2=(aaa bbb ddd ddd);

for ((i = 0; i <= ${#user1}; ++ i))
do
        for ((j = 0; j <= ${#user2}; ++ j))
        do
                if [ $i -eq $j ]
                then
                        echo "${user1[$i]},${user2[$j]}";
                fi
        done
done