在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环境中执行用户提供的输入。