[英]Python subprocess and shell input redirection
在unix命令行上,我可以这样做:
paste <(echo A) <(echo B)
但是,当我尝试这样做时:
import subprocess
subprocess.call('paste <(echo A) <(echo B)', shell = True)
我收到此错误:
/bin/sh: -c: line 0: syntax error near unexpected token `('
/bin/sh: -c: line 0: `paste <(echo A) <(echo B)'
是否无法使用子进程模块进行shell输入重定向?
默认情况下,很多东西都使用/bin/sh
作为首选shell。 /bin/sh
通常不是bash。
系统上的/bin/sh
很可能不支持进程替换。
说服subprocess.call
使用/bin/bash
代替shell,它应该可以工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.