要在Python中读取系统输出(例如,执行'ls'命令),您可以使用subprocess
模块。以下是一个示例代码:
import subprocess
# 执行'ls'命令并将结果存储在output变量中
output = subprocess.check_output(['ls'], shell=True)
# 将输出转换为字符串并打印
print(output.decode('utf-8'))
在这个示例中,我们使用subprocess.check_output()
函数执行'ls'命令。shell=True
参数允许我们在shell中执行命令。函数返回的结果是一个字节字符串,我们使用decode()
函数将其转换为普通字符串。最后,我们打印输出结果。
请注意,在实际应用中,使用shell=True
可能会导致安全风险。在处理不受信任的输入时,最好避免使用它。在这种情况下,您可以将命令及其参数作为列表传递,如下所示:
import subprocess
# 执行'ls'命令并将结果存储在output变量中
output = subprocess.check_output(['ls'])
# 将输出转换为字符串并打印
print(output.decode('utf-8'))
这种方法更安全,因为它不会让您的程序受到shell注入攻击。
领取专属 10元无门槛券
手把手带您无忧上云