點擊上方「嵌入式大雜燴」,「星標公眾號」第一時間查看精彩文章!
在Linux下的開發(fā)中,printf打印調(diào)試信息默認輸出到標準輸出 stdout (即屏幕/終端)中。我們也可以使用輸出重定向技術(shù)輸出到指定文件中,輸出重定向即是把原本要輸出到屏幕的信息寫入到指定文件中。
比如:
但是有時候既要實時查看打印調(diào)試信息,又要把這些調(diào)試信息保存下來發(fā)給他人分析。
下面分享能達到這個需求的兩種方法:
1、使用script工具
script工具
是一個非常使用的工具,可以把輸出到終端的信息記錄下來。使用方法如:
(1)輸入 script log.txt
命令開始保存終端輸出的信息 ?,其中l(wèi)og.txt為需要寫入的log文件,可隨意命名。
(2)輸入exit
退出保存。
演示如下:
之前我只知道有script 這樣一個工具,而且經(jīng)常在Ubuntu上使用。奈何開發(fā)板里的系統(tǒng)沒這個工具,所以很長的一段時間我都是等程序跑完后我手動從終端拷貝全部信息到文本中保存。。。
剛開始程序跑得不久,日志信息還不是很多,還可以接受。后面程序跑久了,日志信息越來越多,再這么手動拷貝實在受不了。
所以找了另外的方法:使用tee工具。
2、使用tee工具
tee工具
用于將數(shù)據(jù)重定向到文件,另一方面還可以提供一份重定向數(shù)據(jù)的副本作為后續(xù)命令的stdin。簡單的說就是把數(shù)據(jù)重定向到給定文件和屏幕上。
存在緩存機制,每1024個字節(jié)將輸出一次
。若從管道接收輸入數(shù)據(jù),應(yīng)該是緩沖區(qū)滿,才將數(shù)據(jù)轉(zhuǎn)存到指定的文件中。若文件內(nèi)容不到1024個字節(jié),則接收完從標準輸入設(shè)備讀入的數(shù)據(jù)后,將刷新一次緩沖區(qū),并轉(zhuǎn)存數(shù)據(jù)到指定文件。
演示如下:
可見,使用tee工具輸入到文本里的內(nèi)容比script工具輸入到文本里的內(nèi)容還要干凈,就是程序打印輸出的東西。
以上就是本次分享的兩個實用小工具的使用,希望大家喜歡~
猜你喜歡
什么是不完全類型?
wireshark抓包工具的使用及分析
1024G 嵌入式資源大放送!包括但不限于C/C++、單片機、Linux等。在公眾號聊天界面回復(fù)1024,即可免費獲??!
免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!