我有一个包含主机信息的文件,一个主机一行
host1
host2
host3我想做的是
ssh host1 'my command'
ssh host2 'my command'
ssh host3 'my command' 如何使用一行命令来实现它(不是复杂的shell脚本),谢谢
发布于 2017-09-29 03:30:51
这是不是你想要的太复杂了?
for h in $(<file); do ssh $h 'my command'; done另一种可能性是:
cat file | xargs -I% -- ssh % 'my command'或更短:
<file xargs -I% -- ssh % 'my command'如果您确信ssh命令中没有任何-选项,则更短:
<file xargs -I% ssh % 'my command'发布于 2017-09-29 03:30:45
while read -r line; do ssh "$line" 'my command'; done < host该命令将逐行读取文件,并将每一行保存到变量$line中。并使用$line中的主机保存执行ssh命令。
https://stackoverflow.com/questions/46481307
复制相似问题