python怎么实现cmd命令行 ssh
时间: 2024-10-13 11:13:49 浏览: 25
Python实现ssh批量登录并执行命令
4星 · 用户满意度95%
在Python中,你可以使用`paramiko`库来实现通过命令行SSH连接到远程服务器的功能。`paramiko`是一个强大的用于处理SSH协议的Python模块,它支持加密、键盘交互等特性。
以下是基本步骤:
1. 安装paramiko库:
```bash
pip install paramiko
```
2. 创建一个Python脚本,使用以下代码作为示例:
```python
import paramiko
def connect_ssh(username, hostname, port=22, password=None, key_filename=None):
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 自动添加主机密钥
try:
if key_filename:
client.connect(hostname, port=port, username=username, pkey=paramiko.RSAKey.from_private_key_file(key_filename))
else:
client.connect(hostname, port=port, username=username, password=password)
print(f"Connected to {hostname} as {username}")
return client
except Exception as e:
print(f"Failed to connect: {str(e)}")
return None
# 使用示例
ssh_client = connect_ssh('your_username', 'remote_host', password='your_password')
if ssh_client:
stdin, stdout, stderr = ssh_client.exec_command("ls") # 执行远程命令
for line in stdout.readlines():
print(line.strip())
ssh_client.close() # 关闭连接
```
在上述代码中,你需要替换`your_username`、`remote_host`和`your_password`为你实际的用户名、主机名和密码。
阅读全文