導航:首頁 > 信息系統 > linux控制台輸出信息保存在哪裡

linux控制台輸出信息保存在哪裡

發布時間:2023-03-25 23:25:39

❶ linux命令輸出到屏幕的同時保存到文件

tee用於把命令結果列印在屏幕上並同時保存到文件。

tee用法

描述:從標准輸入中讀取並同時寫入到標准輸出和指定的文件上

選項:

    -a,--append:不覆蓋,而是追加輸出到指定的文件中

    -i,--ignore-interrupts:忽略中斷信息

    若指定的輸出文件為'-',則再次輸出到標准輸出上

實例:

    tee Example.txt #將標准輸入中輸入的內容同時輸出到Example.txt和標准輸出上

實踐:

例如 ifconfig | tee ifconfig.log

查看iconfig.log

註:

標准輸入一般有鍵盤和其它文件,標准輸出有屏幕等。tee只能進行標准輸入的輸出,對於錯誤輸入是不能輸出的。

在調試腳本時,想要每個命令的執行過程都輸出到屏幕或者文件中,以便後續查看,如何操作呢?首先腳本第一行要寫為「#!/bin/bash -x」,這樣會把每個命令的執行記錄都輸出到屏幕,若皮好還要輸出到指定文件,要用到tee,但tee只能進行標准輸入,對於標准輸入和錯誤輸入要用到下式:

./filename.sh 2>&1 | tee output.log   或者直接 bash -x ./filename.sh 2>&1 | tee output.log

今天調試一個bash,要把屏幕的輸出結果存到log文件中,開始輸入$bash -x ./test.sh > log 結果發現log里只存放了程序的執行結果,後來在cu的一篇帖子里http://bbs.chinaunix.net/viewthread.php?tid=264380&highlight=bash得到了啟發,bash -x的調試信息是輸出到2號流中的,所以解決方案為bash -x ./test.sh 2>&1 | tee log 想起以前要存放執行make的結果時也遇到類似問題,總結如下:

1、管道符的「I」的作用只是把前一個程序的標准輸出流(stdout)的數據作為後一個野和程序的標准輸入流stdin的數據,如不進行重定向,則其他輸出流的信息是無法傳給後面的程序的

2、屏幕得到的信息不一定是從程序的標准輸出來的,也包括標准錯誤輸出流stderr中的信息

3、有些程序(特別是象bash、make這樣執行了其他程序的程序)的設計者為了省事,把一些正常情況的信息也放在stderr中輸出(即使程序本身並無錯誤),而stdout用來輸出被調用程序的執行時信息,造成了用戶的誤解簡單編寫了一下腳本,通過ssh登陸在命令行下運行正常,可是將腳本添燃脊鉛加到crontab中就不正常。想記錄一下輸出信息,分析一下錯誤原因。將腳本通過使用>info.log 重定向輸出,結果發現一些在命令行下可以看到的文本信息沒有記錄到info.log文件中,研究了一下,那些輸出估計是輸出到了標准錯誤上。

研究了一下通常添加命令後面幾個輸出含義

■ >/dev/null 輸出到空設備,表示丟掉輸出信息。

■ 2>&1將輸出到標准錯誤的信息輸出到標准輸出設備(通常是屏幕)有3個默認的i/o,

■ 0是標准輸入,一般是鍵盤

■ 1是標准輸出,一般是屏幕

■ 2是標准錯誤,有時候屏幕上可以看到,但是重定向的文件中看不到的就是它了

❷ linux下如何將,控制台輸出的所有內容,全部輸出到一個文本文件

直接使用輸出重定向到你想要的文件即可,不過將所有的控制到信息輸出到一個文本文件,只有兩個辦法:
①:修改所有程序的輸出路徑:printf函耐段前數 echo.....幾乎是不可能完成的任務
②:修改linux的標准輸出路徑:

句柄 句柄的數字代號 描述
STDIN 0 鍵盤輸入
STDOUT 1 輸出到命令提昌清示符窗口
STDERR 2 錯誤輸出到命令提示符窗口

將標准燃脊輸出 標准輸出的默認設置更改為你要保存的文件,這樣就會控制台的信息就會輸出到你指定的文件裡面

❸ linux保存printf信息

在Linux系統中,可以使用重定向符號「>」將printf輸出的信息保存至文件中。例如,若要將printf輸出的信息保存至名為「output.txt」的文件中,可以使用以下命令:

printf "Hello World\n" > output.txt

這將把「Hello World」字元串輸出到終端,並將其保存旦答至「output.txt」文件中。如果要將多州遲派次printf輸出的信息保存至同一文件中,可以使用「>>」符號表示追加輸出,例冊賀如:

printf "Hello World\n" >> output.txt
printf "How are you today?\n" >> output.txt

這將將兩個printf輸出追加到「output.txt」文件末尾,而不會覆蓋之前的輸出。

閱讀全文

與linux控制台輸出信息保存在哪裡相關的資料

熱點內容
三星應用程序強制停止如何開啟 瀏覽:752
嘉定區什麼是建築施工市場價格 瀏覽:230
菜市場如何打假 瀏覽:202
什麼是龍骨船技術 瀏覽:245
otc機器人怎麼查看原有程序 瀏覽:947
交易貓需要投保多少 瀏覽:934
閥門的技術優勢怎麼寫 瀏覽:761
信息資源管理方式包括什麼 瀏覽:395
水果消費市場有多少 瀏覽:676
手機微信博雲學小程序怎麼登錄 瀏覽:793
口罩出口信息怎麼看 瀏覽:860
產品防偽數碼是什麼意思啊 瀏覽:161
市場營銷有哪些應用 瀏覽:318
花喜代理怎麼加盟 瀏覽:40
信息管理人員經歷了哪些階段 瀏覽:969
仁化汽車配件代理加盟如何 瀏覽:1000
之江生物產品銷量怎麼樣 瀏覽:670
宇花靈技術怎麼用 瀏覽:602
想去泉州賣菜哪個菜市場人流大 瀏覽:411
沈陽雪花酒水怎麼代理 瀏覽:125