ssh 到多个主机并运行命令

ssh 到多个主机并运行命令

如何通过 ssh 连接到多个主机(例如 host1、host2、host3 等)和 cat/etc/fstab来生成report.txt

答案1

是的,您可以ssh hostname command将输出重定向到您的report.txt

以下脚本可从所有主机获取此报告。 servername.dat 包含所有主机名。

 #!/bin/sh
 SERVERLIST=servername.dat
 ICMD='cat /etc/fstab'
 while read SERVERNAME
 do
    ssh -n $SERVERNAME $ICMD > $SERVERNAME_report.txt
 done < "$SERVERLIST"

答案2

你可以这样做:

for i in username1@host1 username@host2; do ssh $i cat /etc/fstab >> report.txt; done

假设您在主机(主机 1 和主机 2)上设置了 ssh 公钥身份验证,否则系统将提示您输入每个主机的密码。

相关内容