
解决Python paramiko模块中nohup命令不生效的远程SSH执行问题
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本文章详细探讨了在使用Python的paramiko库进行远程SSH操作时遇到的一个常见问题:通过该库发送的nohup命令无法正常工作。我们将深入分析这个问题的原因,并提供有效的解决方案,帮助开发者顺利完成任务。
使用Python的paramiko模块远程执行SSH命令时遇到nohup不起作用的问题解决方法:
1. 使用paramiko模块通过SSH登录到Linux服务器并尝试运行带有nohup前缀的命令,发现该命令没有按预期生效。
以下是相关代码示例:
```python
# 执行命令函数定义
def command(ssh_config, cmd, result_print=None, nohup=False):
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=ssh_config.hostname, port=ssh_config.port,
username=ssh_config.username, password=ssh_config.password)
if nohup:
cmd = nohup {} &.format(cmd)
stdin, stdout, stderr = ssh.exec_command(cmd)
# 获取命令执行结果
result = stdout.read().decode()
if result_print is not None:
print(result)
return result
```
确保在调用`command()`函数时将nohup参数设置为True,以使该功能生效。
全部评论 (0)


