我在一个文件中有一个服务器列表,我将调用"盒子">
我正在运行以下内容:
bastion:~ # while read i j; do ssh -n $i 'echo $(hostname)'; done < boxes
当我运行这个程序时,我应该得到我应该SSHing进入的每个盒子的主机名,对吗?但我得到的是我的主机名"堡垒";一遍又一遍,好像命令不是SSHing到任何盒子。
你知道为什么会这样,或者我在这里做错了什么吗?
谢谢。
编辑:我无法让SSH为这个任务工作。最后,我把ssh换成了ansible-m shell。
hostname
足够
我最喜欢的GNU并行(更快(sudo apt-get install parallel
解决方案
parallel --nonall --slf boxes hostname
您可以添加--tag
和更多https://www.gnu.org/software/parallel/parallel_tutorial.html