[英]how to copy os.system('cat /var/log/dmesg') to a variable
import sys
import os
log = os.system('cat /var/log/demesg')
這段代碼通過運行shell腳本cat /var/log/dmesg
打印文件。 但是,它不會復制到日志中。 我想在其他地方使用此數據,或者只是打印數據,例如打印日志。
我該如何實施?
自己簡單地從文件中讀取:
with open('/var/log/dmesg') as logf:
log = logf.read()
print(log)
要從子進程中讀取輸入,可以使用os模塊中的fork (), pipe ()和exec ()。 或使用子流程模塊
作為一種選擇,看看IPython。 Interactive Python為該表帶來了許多易於使用的工具。
ipy$ log = !dmesg
ipy$ type(log)
<3> IPython.utils.text.SList
ipy$ len(log)
<4> 314
調用系統,並將stdout作為字符串列表捕獲到變量。
專為協作科學而設計,也便於通用Python編碼。 基於Web的協作型筆記本電腦(具有交互式繪圖功能,類似於Sage筆記本電腦)也是一項不錯的獎勵功能,並且無所不在地支持並行計算。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.