使用python写代码 获取多台liunx设备的时间差
时间: 2023-04-05 08:02:30 浏览: 137
您好,可以使用Python的paramiko库连接多台Linux设备,通过执行命令获取各设备的时间戳,再进行比较计算时间差。具体实现可以参考以下代码:
```python
import paramiko
import time
# 定义设备IP、用户名、密码
devices = [
{'ip': '192.168.1.1', 'username': 'admin', 'password': '123456'},
{'ip': '192.168.1.2', 'username': 'admin', 'password': '123456'},
{'ip': '192.168.1.3', 'username': 'admin', 'password': '123456'}
]
# 连接设备,获取时间戳
for device in devices:
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(device['ip'], username=device['username'], password=device['password'])
stdin, stdout, stderr = ssh.exec_command('date +%s')
timestamp = int(stdout.read().decode().strip())
ssh.close()
device['timestamp'] = timestamp
# 计算时间差
for i in range(len(devices)):
for j in range(i+1, len(devices)):
diff = abs(devices[i]['timestamp'] - devices[j]['timestamp'])
print('设备{}和设备{}的时间差为{}秒'.format(i+1, j+1, diff))
```
希望对您有所帮助。
阅读全文