在Python中,可以使用subprocess
模块来执行外部命令。为了控制命令执行的超时,可以使用subprocess.run()
函数,并设置timeout
参数。以下是一个示例:
import subprocess
# 要执行的外部命令,例如:ping www.example.com
command = ["ping", "-c", "4", "www.example.com"]
try:
# 设置超时时间(单位:秒),例如:5秒
result = subprocess.run(command, timeout=5)
# 检查命令是否成功执行
if result.returncode == 0:
print("命令执行成功")
else:
print(f"命令执行失败,返回码:{result.returncode}")
except subprocess.TimeoutExpired:
print("命令执行超时")
在这个示例中,我们尝试执行一个ping
命令,并设置超时时间为5秒。如果命令在5秒内没有完成执行,将引发subprocess.TimeoutExpired
异常,我们可以捕获这个异常并输出相应的提示信息。