python 执行shell命令,并获取执行输出的结果
时间: 2024-01-18 15:42:45 浏览: 76
可以使用Python内置的subprocess模块,比如:
```
import subprocess
output = subprocess.check_output("ls -l", shell=True)
print(output.decode('utf-8'))
```
这个例子执行了一个shell命令`ls -l`,并获取结果输出。具体输出结果会根据不同的命令而有所不同。
相关问题
python执行shell 命令并获取结果
在 Python 中,可以使用 `subprocess` 模块执行 shell 命令并获取命令的结果。具体的操作方法如下:
```python
import subprocess
# 执行简单的 shell 命令
result = subprocess.run('ls -l', shell=True, capture_output=True, text=True)
print(result.stdout)
# 执行带有参数的 shell 命令
result = subprocess.run(['mkdir', 'my_folder'], capture_output=True, text=True)
print(result.stdout)
# 执行带有变量的 shell 命令
my_folder = 'my_folder'
result = subprocess.run(f'cd {my_folder} && ls', shell=True, capture_output=True, text=True)
print(result.stdout)
```
在上面的示例中,`subprocess.run()` 函数可以执行任意的 shell 命令,并且可以获取命令的结果。其中,`shell=True` 表示使用 shell 解释器执行命令,`capture_output=True` 表示将命令的输出捕获到变量中,`text=True` 表示将输出转换为字符串。如果命令执行成功,`subprocess.run()` 函数会返回一个 `CompletedProcess` 对象,可以通过访问 `stdout` 属性来获取命令的标准输出。如果命令执行失败,`subprocess.run()` 函数会抛出一个异常。
给出python执行shell命令并获取返回结果的代码
当然可以,以下是Python执行Shell命令并获取返回结果的代码:
```python
import subprocess
def run_command(command):
process = subprocess.Popen(command, stdout=subprocess.PIPE, shell=True)
output, error = process.communicate()
return output.decode("utf-8")
result = run_command("ls -l")
print(result)
```
这段代码可以执行Shell命令`ls -l`并获取该命令的输出结果。如果你需要执行其他Shell命令,只需要将`ls -l`替换为你要执行的命令即可。
阅读全文