Python远程执行命令
大约 1 分钟
脚本文件内容
import paramiko
import sys
def pl_ssh(ip,password,username,cmd,port="22"):
ssh_client=paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
try:
ssh_client.connect(hostname=ip,username=username,password=password)
except Exception as e:
print('服务器%s连接失败' %ip)
print(e)
sys.exit()
stdin,stdout,stderr=ssh_client.exec_command(cmd)
print('服务器%s磁盘使用率情况' %ip)
print(stdout.read().decode("utf-8"))
ssh_client.close()
if __name__ == '__main__':
servers={
"192.16.18.151":{
"username": "root",
"password": "root",
"cmd": "df -h"
}
}
for ip,info in servers.items():
pl_ssh(ip=ip,username=info.get("username"),password=info.get("password"),cmd=info.get("cmd"),port=info.get("port"))
效果
服务器192.16.18.151磁盘使用率情况
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 969M 0 969M 0% /dev
tmpfs 982M 0 982M 0% /dev/shm
tmpfs 982M 9.1M 973M 1% /run
tmpfs 982M 0 982M 0% /sys/fs/cgroup
/dev/mapper/centos-root 50G 7.7G 43G 16% /
/dev/sda1 1014M 139M 876M 14% /boot
/dev/mapper/centos-home 27G 33M 27G 1% /home
tmpfs 197M 0 197M 0% /run/user/0
overlay 50G 7.7G 43G 16% /var/lib/docker/overlay2/77952b5502c7341e960e22cd0333ca3e394b9b52cdb95314cabc99981ca5650d/merged
shm 64M 0 64M 0% /var/lib/docker/containers/a442f921f67646e56ca6c7dbd135d74374bd51d4997909d0d152e58633cc0532/mounts/shm
overlay 50G 7.7G 43G 16% /var/lib/docker/overlay2/3fbb54dfa01f3c6a53bdcb151ad4474e2808ec29597152bafb69932454fa115b/merged
shm 64M 0 64M 0% /var/lib/docker/containers/b18b3d952329ba7359928890cf35423216bdff97f40f1a8392f7d1da1133cf65/mounts/shm
overlay 50G 7.7G 43G 16% /var/lib/docker/overlay2/64dd5ceeed90a08146e286de3096c130543c0f11cd4d09373eebfa2eec80839b/merged
shm 64M 0 64M 0% /var/lib/docker/containers/87f361df7c92b0e109a783a12f7a678e69bcbb15457e61c4cd4a8430f5add262/mounts/shm
overlay 50G 7.7G 43G 16% /var/lib/docker/overlay2/4a32742079a118aca98fbf9e7949489e8f5fef9f969493039ac16e190b57e5b6/merged
shm 64M 0 64M 0% /var/lib/docker/containers/4c494969ae75e08c64791e6a023fd844fd61ac5b04845109fb2334d18fa4e9da/mounts/shm
overlay 50G 7.7G 43G 16% /var/lib/docker/overlay2/f3792068a36554c5fa6c4e694e2b02e5fccafa38607519f10ea924ba179d7069/merged
shm 64M 0 64M 0% /var/lib/docker/containers/51e6fecc90014233a0a6990b1418e0d5092cde1d045db16bb04ab8868695e764/mounts/shm