繁体   English   中英

如何通过Python执行shell命令

[英]How to execute a shell command through Python

我是Python编程的新手。 我想从Python程序执行一个shell命令“at”。 任何一位Python专家都可以帮助我吗? 提前致谢。

subprocess模块可用于此目的:

import subprocess
retcode = subprocess.call(["at", "x", "y", "z"])

xyz替换为at的参数。

或者,您可以使用Popen捕获命令的输出(而不是返回代码),而不是使用subprocess.call()。

import subprocess
process = subprocess.Popen(['at','x','y','z'], stdout=subprocess.PIPE).communicate()[0]

这可能与at命令无关,但知道它很有用。 stdin和stderr也可以这样做。 查看文档以获取更多详细信息。

subprocess.check_output似乎是Python 2.4+中用于执行命令和检查输出的规范便利函数。 如果命令返回非零值(表示错误),它也会引发错误。

subprocess.callcheck_output是围绕一个便利的包装subprocess.Popen ,所以你可能更喜欢使用Popen直接。 但理论上,便利包装是......方便的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM