我想在python中运行以下内容作为异步进程(我在3.7.3上)。
pacman -Qm | aur vercmp -q
在我异步执行此操作之前,我大概做了
pac_proc = Popen(["pacman", "-Qm"], stdout=PIPE)
aur_proc = Popen(["aur", "vercmp", "-q"], stdin=pac_proc.stdout, stdout=PIPE)
效果很好。
现在我正在尝试
pac_out = await create_subprocess_exec(self.pacman, "-Qm", stdout=PIPE, stderr=PIPE)
ver_out = await create_subprocess_exec(self.aurutils, "vercmp", "-q", stdin=pac_out.stdout, stdout=PIPE, stderr=PIPE)
我得到了这么长的追溯,最终导致错误
AttributeError: 'StreamReader' object has no attribute 'fileno'
。
那我该如何异步处理管道?