我是python的新手,希望编写一个脚本,该脚本可以从跳转服务器ssh到大约1000个主机,并且Output应该包含操作系统的主机名和版本。 Redhat 5.0或6,0等我有所有主机的列表,因此脚本可以继续从主机列表中获取主机名。是否有可能使用paramiko和平台模块??如果有人能给我一个粗略的框架让我开始,我真的很感激。或类似的脚本。
答案 0 :(得分:0)
socket
和platform
可以做到这一点。
import socket
import platform
print socket.gethostname()
print platform.platform()
答案 1 :(得分:0)
您可以使用paramiko和shell命令的组合。参见
Perform commands over ssh with Python
ssh = paramiko.SSHClient()
ssh.connect(server, username=username, password=password)
ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command(cmd_to_execute)
此处,对于cmd_to_execute
,您可以使用'主机名':
http://linux.die.net/man/1/hostname
并找到Redhat版本
$cat /etc/redhat-release
请参阅:https://unix.stackexchange.com/questions/88644/how-to-check-os-and-version-using-a-linux-command