有没有人知道是否有办法在for循环中指定一个异常引发的序列,以便我可以ssh到整个机器堆而无需单独输入每个机器号?
即
for i in comp{1..5,7,9}; do
ssh root@$i" echo $i; $doOtherStuff";
done
我希望这不是太模糊 - 我很难找到合适的词语,所以我可能错过了在现有问题中搜索的关键词
由于
答案 0 :(得分:4)
您无法在一个大括号中混合逗号和范围。但你可以用多个级别来做到这一点:
for i in comp{{1..5},7,9}
...
done
答案 1 :(得分:2)
我希望我明白你正确的尝试。如果我这样做,那么一种方法就是
for i in {1..5} 7 9; do
comp="comp$i"
ssh root@$comp" echo $comp; $doOtherStuff";
done
列表i
遍历为1 2 3 4 5 7 9
。然后,您可以使用它来组合机器的名称(在此处的变量comp
中),并按照您打算使用i
的方式使用它。