Python在Linux终端执行命令输出结果转为文本
时间: 2024-03-08 16:48:43 浏览: 29
在Linux终端中,你可以使用`subprocess`模块来在Python中执行命令并获取输出结果。以下是一个示例代码:
```python
import subprocess
# 执行命令并获取输出结果
result = subprocess.run(['ls'], capture_output=True, text=True)
# 输出结果
print(result.stdout)
```
在这个示例中,我们使用`subprocess.run`方法来执行`ls`命令,并将其输出结果存储在`result`变量中。为了捕获输出结果,我们使用了`capture_output=True`参数,并使用`text=True`参数将输出结果转换为文本。最后,我们使用`print`方法输出文本结果。
需要注意的是,`capture_output`和`text`参数只在Python 3.7及以上版本中可用。如果你的Python版本低于3.7,可以使用`subprocess.PIPE`参数来捕获输出结果,并使用`decode`方法将其转换为文本。例如:
```python
import subprocess
# 执行命令并获取输出结果
result = subprocess.run(['ls'], stdout=subprocess.PIPE)
# 将输出结果转为文本
output = result.stdout.decode('utf-8')
# 输出结果
print(output)
```
相关问题
Python在终端执行命令输出结果转为文本
你可以使用Python的`subprocess`模块来在终端执行命令并获取输出结果。以下是一个示例代码:
```python
import subprocess
# 执行命令并获取输出结果
result = subprocess.run(['ls'], stdout=subprocess.PIPE)
# 将输出结果转为文本
output = result.stdout.decode('utf-8')
# 输出结果
print(output)
```
在这个示例中,我们使用`subprocess.run`方法来执行`ls`命令,并将其输出结果存储在`result`变量中。接下来,我们使用`decode`方法将输出结果转换为文本,并将其存储在`output`变量中。最后,我们使用`print`方法输出文本结果。
Python在Linux服务器中执行命令输出结果转为文本
你可以使用Python的subprocess模块来执行命令并获取输出结果,然后将结果保存到文本文件中。以下是示例代码:
```python
import subprocess
# 执行命令
result = subprocess.run(['ls', '-l'], capture_output=True, text=True)
# 将结果保存到文本文件中
with open('output.txt', 'w') as f:
f.write(result.stdout)
```
在这个示例中,我们使用`subprocess.run`函数来执行`ls -l`命令,并使用`capture_output=True`参数来捕获命令的输出结果。我们还使用`text=True`参数来指定输出结果为文本形式而不是字节形式。最后,我们将输出结果保存到名为`output.txt`的文本文件中。