簡體   English   中英

如何從 Python 中的 shell 命令捕獲輸出?

[英]How can I capture the output from a shell command in Python?

我需要做的是:在 Python 腳本 spawn 中,說ls --colors=always / Linux 命令,並讀取其輸出。 重要的部分是我需要輸出來保留所有 ANSI 轉義序列(顏色等),以便稍后將這些序列轉換為 HTML。 我聽說 Python pty模塊可以做到這一點,但我在互聯網上找不到有用的示例,而且這個模塊的文檔也不是很全面。 如果有人能指導我完成這項任務,我將不勝感激。

import subprocess as sub

process = sub.Popen("ls --colors=always /", stdout=sub.PIPE, stderr=sub.PIPE)
output, errors = process.communicate()

現在你想要的所有數據都應該在output ——包括 ANSI 轉義序列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM