【发布时间】:2014-02-10 08:28:10
【问题描述】:
我有一个 python 脚本,可以从给定的输入生成许多 shell 命令。问题是当它尝试执行生成的命令时,它失败了,但是当我自己运行生成的命令时(即从命令行),它们成功执行。
这是生成的命令:
<pre>find /home/me/downloader/0-29/ -type f | grep -i .rpm$ | xargs -i cp {} /home/me/downloader/builds/0-29/</pre>
以下是python脚本运行时的错误信息:
find:路径必须在表达式之前:| 用法:find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
您能帮我理解问题所在吗?
UPD:这是我用来执行生成的命令的函数:
def exec_command(command):
process = subprocess.Popen(command.split(), stdout=subprocess.PIPE)
output = process.communicate()[0]
return output
【问题讨论】:
-
你是如何从 python 执行该行的?提供一些代码?
-
您可能需要在 python 中引用您的命令才能执行...