python - Subprocess Popen 命令运行但实际上并没有做任何事情
问题描述
我们正在尝试通过在子进程中运行 cmd 命令来在 python 中进行端口转发,如下所示:
from subprocess import Popen, PIPE
port = 57123
username = "user"
password = "password"
remote_ip = "10.1.1.110"
cmd = subprocess.Popen(f'ssh -f -N -L {port}:127.0.0.1:{port} {username}@{remote_ip}', stdin=PIPE, shell=True)
cmd.stdin.write(password+'\n')
cmd.stdin.flush()
这段代码运行没有错误,但它实际上并没有做任何事情。端口不转发。cmd.stderr
也是空的 ( None
)。知道我们做错了什么吗?
解决方案
推荐阅读
- tags - 删除动态生成的广告
- xml - 使用 XSLT 将 XML 转换为 CSV
- c++ - C++ RVO 是否适用于 auto[x,y] = my_func()?
- python - 以秒 (?) 为单位的 datetime 列转换为 pandas 日期时间
- python - 使用边缘检测创建一个 numpy 掩码
- symfony - 子文件夹中的刺激控制器在 Symfony 中不起作用
- firebase - FirebaseError:权限缺失或不足。只读
- android - 无法在 Android 设备或模拟器上启动 React Native App。错误:spawnSync adb ENOENT
- asp.net - InvalidOperationException:无法解析类型“Microsoft.AspNetCore.Identity.UserManager`1[AspNetCoreTodo.Models.ApplicationUser]”的服务
- nlp - 在特定领域继续训练预训练的 BERT 模型的最简单方法是什么?