gpt4 book ai didi

python - 如何在 Python 脚本中运行 bash 命令

转载 作者:IT老高 更新时间:2023-10-28 20:30:21 27 4
gpt4 key购买 nike

我正在尝试在 bash 脚本中同时运行 Python 和 bash 命令。在 bash 脚本中,我想执行一些被 Python 循环包围的 bash 命令:

#!/bin/bash

python << END
for i in range(1000):
#execute‬ some bash command such as echoing i
END

我该怎么做?

最佳答案

使用 subprocess ,例如:

import subprocess
# ...

subprocess.call(["echo", i])

还有一个类似subprocess.call的函数:subprocess.check_call。它与 call 完全一样,只是如果执行的命令返回一个非零的退出代码,它就会抛出一个异常。这在脚本和实用程序中通常是可行的。

subprocess.check_output 行为与 check_call 相同,但返回程序的标准输出。


如果您不需要 shell 功能(例如变量扩展、通配符等),请不要使用 shell=True(默认为 shell=False)。 如果您使用 shell=True,那么 shell 转义是您使用这些功能的工作,如果传递未经验证的用户输入,它们就是一个安全漏洞。

os.system() 也是如此——它是安全问题的常见来源。不要使用它。

关于python - 如何在 Python 脚本中运行 bash 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26236126/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com