python

python外部命令如何执行系统shell命令

小樊
81
2024-12-12 00:52:37
栏目: 编程语言

在Python中,你可以使用subprocess模块来执行外部命令和系统shell命令

import subprocess

# 执行一个简单的shell命令,例如列出当前目录下的所有文件
command = "ls"
output = subprocess.check_output(command, shell=True, text=True)

print("Output:", output)

在这个例子中,我们使用subprocess.check_output()函数来执行ls命令。shell=True参数表示我们希望在shell环境中执行这个命令,而text=True参数表示我们希望以文本形式接收输出。

注意:在使用shell=True时,要特别小心,因为它可能会导致安全漏洞,尤其是当执行的命令包含用户提供的输入时。在这种情况下,最好使用命令序列(列表形式)而不是命令字符串,并避免使用shell=True。例如:

import subprocess

# 使用命令序列执行shell命令,例如列出当前目录下的所有文件
command = ["ls"]
output = subprocess.check_output(command, text=True)

print("Output:", output)

这种方法更安全,因为它避免了在shell环境中执行用户提供的输入。

0
看了该问题的人还看了