写入 Python subprocess.Popen 对象的文件描述符 3
如何写入 subprocess.Popen 对象的文件描述符 3?
我正在尝试使用 Python 在以下 shell 命令中完成重定向(不使用命名管道):
$ gpg --passphrase-fd 3 -c 3<passphrase.txt < filename.txt > filename.gpg
How do I write to file descriptor 3 of a subprocess.Popen object?
I'm trying to accomplish the redirection in the following shell command with Python (without using named pipes):
$ gpg --passphrase-fd 3 -c 3<passphrase.txt < filename.txt > filename.gpg
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
子进程
proc
继承在父进程中打开的文件描述符。因此,您可以使用 os.open 来打开 passphrase.txt 并获取其关联的文件描述符。然后,您可以构造一个使用该文件描述符的命令:
要从管道而不是文件中读取,您可以使用 os.pipe :
The subprocess
proc
inherits file descriptors opened in the parent process.So you can use
os.open
to open passphrase.txt and obtain its associated file descriptor. You can then construct a command which uses that file descriptor:To read from a pipe instead of a file, you could use
os.pipe
: