1. 程式人生 > >Linux 輸出或儲存終端顯示

Linux 輸出或儲存終端顯示

如何在輸出資訊的同時將其儲存在檔案中?
有三種方式
此種方式不能輸出資訊,只能儲存在檔案中
1. 直接將命令的結果用 > 把輸出轉向
[[email protected] ~]# ls >ls.txt
[[email protected] ~]# cat ls.txt
anaconda-ks.cfg
cronolog-1.6.2
install.log
install.log.syslog
ls_tee.txt
ls.txt
typescript

2.利用tee在輸出資訊的同時儲存到檔案中
tee的含義:read from standard input and write to standard output and files

[[email protected] ~]# ls | tee ls_tee.txt
anaconda-ks.cfg
cronolog-1.6.2
install.log
install.log.syslog
ls_tee.txt
ls.txt
typescript
[[email protected] ~]# cat ls_tee.txt
anaconda-ks.cfg
cronolog-1.6.2
install.log
install.log.syslog
ls_tee.txt
ls.txt
typescript

3.多個命令的輸出都需要記錄,可以用script

[[email protected] ~]# script
Script. started, file is typescript
[[email protected] ~]# ls
anaconda-ks.cfg install.log ls_tee.txt typescript
cronolog-1.6.2 install.log.syslog ls.txt
[[email protected] ~]# exit
exit
Script. done, file is typescript
[[email protected]

~]# cat typescript
Script. started on Fri 28 Sep 2012 05:27:02 PM CST
[[email protected] ~]# ls
anaconda-ks.cfg install.log ls_tee.txt typescript
cronolog-1.6.2 install.log.syslog ls.txt
[[email protected] ~]# exit
exit

Script. done on Fri 28 Sep 2012 05:27:12 PM CST

在啟動script時沒有指定檔名,它會自動記錄到當前資料夾下一個檔名為typescript的檔案中。也可以用-a 引數 指定檔名
[[email protected] ~]# script. -a example.txt

另外還可以錄製
並播放session的內容
  我們可以用 script把整個終端會話的所有操作和輸出錄製下來,然後再用scriptreplay進行播放。
  如果錄製時記錄下來了操作時的時間資料,那麼播放時和操作時的使用時間完全相同,
  這個很有用吧,比如:我們可以把安裝軟體時編譯的過程記錄下來,然後給別人進行演示
  看例子:
  script.t2>example.timeaexample.txtScript.started,fileisexample.txt ls
  說明: -t 2>example.time -t是把時間資料輸出到標準錯誤(standard error)
  所以我們使用 2>example.time 把資料轉向到 example.time這個檔案當中
  如何播放所記錄的內容?
  第一步:安裝scriptreplay
  下載
  wget linux/utils/util-linux/util-linux-2.12r.tar.bz2”>ftp://ftp.kernel.org/pub/linux/utils/util-linux/util-linux-2.12r.tar.bz2
  解壓
  tar -jxvf util-linux-2.12r.tar.bz2
  之後複製檔案到系統的命令目錄中即可
  # cp util-linux-2.12r/misc-utils/scriptreplay.pl /usr/bin/scriptreplay
  # chmod 755 /usr/bin/scriptreplay
  備註: fedora 10的util-linux-ng-2.14.1-3.2.fc10.i386.rpm 此包中已包含 scriptreplay,已無需另行安裝
  第二步:播放所錄製的session內容
  scriptreplayexample1.timeexample1.txt ls
  1.gtkrc-2.0 c.tar pass
  abcdbash:abcd:commandnotfound exit

錄製及播放沒有測試過

相關推薦

Linux 輸出儲存終端顯示

如何在輸出資訊的同時將其儲存在檔案中? 有三種方式 此種方式不能輸出資訊,只能儲存在檔案中 1. 直接將命令的結果用 > 把輸出轉向 [[email protected] ~]# ls >ls.txt [[email p

ARM+LINUX嵌入式系統的終端顯示中文亂碼解決

前一段時間解決的一個問題,看起來是個小問題,實際解決這個問題卻花了一個星期的晚上休息時間,記錄分享一下。 問題描述: linux核心配置中NLS(native language support)已經選擇了預設語言配置為utf8,幷包含一些其他常用語言的編碼,但是在se

通過printf設定Linux終端輸出的顏色和顯示方式

前言      在Linux終端下除錯程式時,有時需要輸出大量資訊。若能控制字型的顏色和顯示方式,可使輸出資訊對比鮮明,便於除錯時觀察資料。      終端的字元顏色由轉義序列(Escape Sequence)控制,是文字模式下的系

Linux下Shell命令的輸出信息同時顯示在屏幕和保存到日誌文件中

blog inux -a 輸出 輸出內容 使用 col 文件中 信息 #直接覆蓋日誌文件 ls -l | tee ./t.log #將輸出內容附加到日誌文件 ls -l | tee -a ./t.log 使用的是tee命令Linux下She

SecureCRT設置linux終端顯示顏色

b- avi left png 技術 tom display rep info 在linux系統上,我們使用終端時,對於文件或目錄會顯示不同的顏色。而SecureCRT默認顯示的顏色是單一的,我們該如何讓其像linux一樣顯示個性化顏色呢。 使用SecureCRT登錄 l

Linux下執行bash指令碼顯示“: /usr/bin/env: "bash\r": 沒有那個檔案目錄

用 ./ 執行bash指令碼檔案出現 報錯資訊 /usr/bin/env: "bash\r": 沒有那個檔案或目錄 錯誤原因:這主要是因為bash後面多了\r這個字元的原因。在linux終端下,輸出\r會什麼都不顯示,只是把游標移到行首。於是終端雖然輸出了/usr/bin/env bash,

linux】將ubuntu終端輸出為檔案

方案一: tee tee --help 用法:tee [選項]… [檔案]… 將標準輸入複製到每個指定檔案,並顯示到標準輸出。 -a, --append 內容追加到給定的檔案而非覆蓋 -i, --ignore-interrupts 忽略中斷訊號 -p diagnose

Linux屏中資訊量大,一屏幾屏顯示不全怎麼辦

Linux屏中資訊量大,一屏或幾屏顯示不全 兩種方法 1.加個引數 |more 例如:ls -l |more 這樣敲完命令後,螢幕資訊會停留在第一頁上,再敲回車後,又多顯示一行。 但如果,資訊太多敲回車太麻煩,可以採用第二種方法。 2.寫入一個檔案中 例如:l

R語言——在linux環境下如何畫圖儲存圖片

通常在win環境下,我們利用RStudio畫圖非常方便,直接plot就可以展現出圖片,但是在linux環境下,我們通過shell則無法畫圖。 問題 例如我們在linux下的R中輸入如下命令: png('test.png') 則會出現如下錯誤資訊: Error in .

linux中怎麼用shell顯示檔案某一行幾行內容

宣告:從網上看了很多關於這方面的資料,做了一下整合,參考的連結在文章末尾貼出。命令:相關顯示命令有sed,tail,cat.awk,head等,可以常看Linux命令大全,man命令或者help命令檢視相關用法。我們只介紹其中的一部分。一、sed命令#sed --help;檢

解決Linux下執行Python指令碼顯示“: 沒有那個檔案目錄”的問題

我猜不少人都遇到過類似的問題: 在Windows下寫好了一個python指令碼,執行沒問題 但放到Linux系統下就必須在命令列前加上一個python直譯器才能執行 指令碼開頭的註釋行已經指明瞭直譯器的路徑,也用chmod給了執行許可權,但就是不能直接執行指令碼。 比如這個指令碼: #!/usr/bin/

在Mac、Linux 終端顯示 Git 當前所在分支

1 進入你的home目錄 cd ~ 2 編輯.bashrc檔案 vi .bashrc 3 將下面的程式碼加入到檔案的最後處 function git_branch { branch="`git branch 2>/dev/null | gre

Linux下執行Python指令碼顯示“: 沒有那個檔案目錄”問題

        後來一想,應該是編碼問題。Windows下,文字的換行是\r\n一同實現的,而Lnix/UNIX下則只用\n。對於: #!/usr/bin/env python\r\n 這樣一行文字,windows下的程式會認為#!/usr/bin/env python就是一行。而linux會認為#! /us

python 1: 解決linux系統下python中的matplotlib模組內的pyplot輸出圖片不能顯示中文的問題

問題: 我在ubuntu14.04下用python中的matplotlib模組內的pyplot輸出圖片不能顯示中文,怎麼解決呢? 解決: 1.指定預設編碼為UTF-8: 在python程式碼開頭加入如下程式碼 import sys reload(sys) sys.setdefaultencodi

如何在Linux核心中將輸出列印到終端

#include <linux/kernel.h>#include <linux/module.h>#include <linux/init.h>#include <linux/sched.h>#include <linu

克隆複製VMware虛擬機器後,Linux系統eth0消失,顯示eth1

0、問題: 克隆或者複製VMware 虛機,重啟網絡卡報錯: Bringing up interface eth0: Device eth0 does not seem to be present

Linux核心】Ubuntu下printk函式無法在終端顯示

在Ubuntu下使用insmod安裝模組的時候,發現預設的除錯資訊並沒有輸出,但是使用dmesg命令可以看到在日誌中確實有除錯資訊,下面分析一下可能的情況。 printk資訊的輸出去向 這是在核心的命令列引數console=ttyXXX裡指定死了,比

Linux終端 顯示檔案全部內容

有時候想看伺服器上檔案全部內容,可以不管用什麼命令(cat、tail)都只是顯示一部分呢,那是你的終端(SecureCRT/Xshell )的快取行數限制,需要擴大一下。SecureCRT 螢幕輸出行數設定:https://blog.csdn.net/w410589502/a

使linux終端顯示256色

Matt Wozniski wrote an awesome little Vim plugin called CSApprox that lets Vim transparently apply GVim colorschemes in the terminal. CSAp

將Ubuntu終端輸出資訊儲存到log中

1.script 執行以下命令,開啟儲存: sudo script screen.log 之後你在終端輸入的相關命令,及終端的所有輸出資訊都被儲存到screen.log檔案中,然後執行以下命令,停止儲存: exit 注:screen.log在你的當前目錄下