具体的问题如下图所示

前置条件:deployer 账号不能执行 sudo su- 切换为 root 用户,只能执行 sudo su 暂时获得 root 权限。
图一为手动在机器上执行巡检命令 先 sudo su 然后 supervisorctl status 正常返回结果。
用图二脚本中的语句 paramiko.SSHClient().exec_command('sudo su;supervisorctl status',get_pty=True) 执行,python 进程一直处于运行状态 但无返回结果。
命令行单独运行以下语句 也是同样的结果: python -c 'import paramiko;ssh=paramiko.SSHClient();ssh.load_system_host_keys();ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy());ssh.connect("xxx",22,"deployer","xxx",compress=True);stdin,stdout,stderr = ssh.exec_command("sudo su;supervisorctl status");print stdout.read()'
怀疑是 sudo su 切换后环境变量仍然是 deployer ? 所以执行不成功??
求大佬指点