自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

利用script命令記錄下會(huì)話過(guò)程

系統(tǒng) Linux
在Unix系統(tǒng)維護(hù)中,有時(shí)候系統(tǒng)工程師希望能夠記錄下會(huì)話的過(guò)程。如在測(cè)試一個(gè)系統(tǒng)功能的時(shí)候,工程師就希望將測(cè)試的步驟都一一的紀(jì)錄下來(lái)。以便出現(xiàn)問(wèn)題時(shí)利用這份資料進(jìn)行追蹤分析。如有時(shí)候在制作培訓(xùn)文檔的時(shí)候,可能也需要這些會(huì)話記錄,以方便培訓(xùn)師制作PPT等培訓(xùn)文檔??傊褪且痪湓挘到y(tǒng)工程師現(xiàn)在想要記錄某個(gè)會(huì)話的過(guò)程,在Unix系統(tǒng)中能否實(shí)現(xiàn)?

在Unix系統(tǒng)維護(hù)中,有時(shí)候系統(tǒng)工程師希望能夠記錄下會(huì)話的過(guò)程。如在測(cè)試一個(gè)系統(tǒng)功能的時(shí)候,工程師就希望將測(cè)試的步驟都一一的紀(jì)錄下來(lái)。以便出現(xiàn)問(wèn)題時(shí)利用這份資料進(jìn)行追蹤分析。如有時(shí)候在制作培訓(xùn)文檔的時(shí)候,可能也需要這些會(huì)話記錄,以方便培訓(xùn)師制作PPT等培訓(xùn)文檔??傊褪且痪湓挘到y(tǒng)工程師現(xiàn)在想要記錄某個(gè)會(huì)話的過(guò)程,在Unix系統(tǒng)中能否實(shí)現(xiàn)?

  一、script命令的主要作用于特點(diǎn)。

  在Windows操作系統(tǒng)中,讀者可能用過(guò)一些屏幕記錄軟件,可以將某段時(shí)間的操作通過(guò)視頻的形式記錄下來(lái)。不過(guò)在Unix操作系統(tǒng)中,有時(shí)候不用這么麻煩。因?yàn)椴僮飨到y(tǒng)提供了一個(gè)script命令,幫助系統(tǒng)工程師來(lái)記錄某個(gè)會(huì)話的過(guò)程。這是一個(gè)比較冷僻的命令,也不在POSIX的規(guī)范中。為此有些Unix操作系統(tǒng)版本就可能不帶有這個(gè)功能。不少系統(tǒng)工程師可能平時(shí)很少接觸這個(gè)命令。不過(guò)筆者是比較喜歡這命令的。簡(jiǎn)單的說(shuō),系統(tǒng)工程師利用這個(gè)命令就可以將一個(gè)會(huì)話的整個(gè)過(guò)程或則中間的某些操作記錄到一個(gè)文件中。利用這個(gè)命令基本上可以在文件中記錄大部分的鍵盤操作、命令的輸出結(jié)果以及錯(cuò)誤信息。也就是說(shuō),在屏幕上輸出的信息基本上都可以保存在這個(gè)文件中。然后系統(tǒng)管理員可以在事后查看這個(gè)文件以獲得必要的信息。那么這個(gè)命令該如何使用呢?如下圖,其實(shí)很簡(jiǎn)單。

就是script命令使用的基本過(guò)程。首先當(dāng)系統(tǒng)工程師想要記錄某個(gè)會(huì)話的時(shí)候,則只需要在會(huì)話開(kāi)始時(shí)輸入script命令。輸入這個(gè)命令后,系統(tǒng)就會(huì)將當(dāng)前用戶的所有鍵盤操作、屏幕輸出以及錯(cuò)誤信息等等保存到一個(gè)特定的文件中。如上面執(zhí)行了ps命令與who命令后,希望就會(huì)將這兩個(gè)命令(用戶的鍵盤操作)、屏幕輸出(命令的執(zhí)行結(jié)果)等等保存到文件中。當(dāng)工程師需要退出記錄過(guò)程時(shí),則只需要輸入exit命令,系統(tǒng)就會(huì)就是script done的提示信息。表示系統(tǒng)已經(jīng)結(jié)束了記錄工作。

  當(dāng)系統(tǒng)工程師需要查看這個(gè)文件的信息時(shí),可以使用cat或者vi命令來(lái)查看這個(gè)文件中的內(nèi)容。不過(guò)所使用的shell版本不同,他們先是的結(jié)果可能有所差異。如在某些版本中,使用cat命令來(lái)查看這個(gè)文件,可能只顯示這個(gè)命令在什么時(shí)候完成,而不會(huì)顯示用戶的鍵盤操作與屏幕的輸出信息。為此筆者建立采用vi命令。利用vi命令來(lái)查看這個(gè)文件,就不會(huì)有版本之間的差異問(wèn)題。如使用vi typescript命令,就可以查看這個(gè)文件中的具體信息。通常情況下,整個(gè)文件中包含以下幾部分內(nèi)容。

  ***行是注釋信息。如“Script started on 2009年06月15日 星期一 18時(shí)24分21秒”。這個(gè)提示信息顯示這個(gè)命令開(kāi)始執(zhí)行的時(shí)間。然后在***一行中,也有類似的提示信息。不過(guò)***一行的提示信息顯示的是這個(gè)命令完成的時(shí)間,顯示了命令執(zhí)行完成的日期、具體時(shí)間等西虛擬。然后中間的部分就是命令與輸出結(jié)果的信息。如果在命令的的執(zhí)行過(guò)程中,有錯(cuò)誤信息的話,也會(huì)一并在這里記錄。

 

#p#

二、scirpt命令使用的注意事項(xiàng)。

  從以上的截圖中可以看出這個(gè)命令使用起來(lái)其實(shí)并不是很復(fù)雜。不過(guò)在一些細(xì)節(jié)方面還系統(tǒng)管理員仍然需要注意。具體的來(lái)說(shuō),有如下幾個(gè)方面要注意。

  ***需要注意重復(fù)記錄的問(wèn)題。系統(tǒng)工程師可能只需要記錄部分的操作,為此在世紀(jì)工作中可能會(huì)頻繁的打開(kāi)和關(guān)閉這個(gè)命令。但是需要注意的是,默認(rèn)情況下采用script命令后會(huì)覆蓋原有的文件。如現(xiàn)在系統(tǒng)工程師首先使用script命令記錄了ps操作,此時(shí)系統(tǒng)會(huì)產(chǎn)生一個(gè)叫做typescript的文件,記錄這個(gè)命令操作的相關(guān)信息,然后中止了這個(gè)命令。一會(huì)兒一后又重新使用這個(gè)命令,來(lái)記錄who操作的過(guò)程。此時(shí)系統(tǒng)又會(huì)產(chǎn)生一個(gè)一模一樣的typescript文件。此時(shí)系統(tǒng)會(huì)將原先的記錄文件覆蓋掉。顯然這可能跟系統(tǒng)工程師的初衷相違背的。系統(tǒng)工程師希望后續(xù)的操作能夠保存在原先的記錄文件中,而不是覆蓋掉。如果要實(shí)現(xiàn)這個(gè)需求的話,那么系統(tǒng)工程師在執(zhí)行這個(gè)命令時(shí),必須使用一個(gè)可選項(xiàng)參數(shù)。即按照script –a的形式來(lái)啟動(dòng)這個(gè)命令。此時(shí)系統(tǒng)就不會(huì)覆蓋原有的記錄內(nèi)容,而是將后續(xù)的操作內(nèi)容追加到原有的文件中。


    第二是不會(huì)記錄所有的操作。如系統(tǒng)工程師先啟動(dòng)了script命令。然后再利用passwd命令來(lái)修改當(dāng)前帳戶或者其他帳戶(以特權(quán)用戶登錄)的密碼時(shí),這個(gè)密碼信息是否也會(huì)記錄下來(lái)呢?如果在記錄文件中也記錄了密碼的操作信息,那么顯然會(huì)帶來(lái)一定的安全隱患。不過(guò)這個(gè)擔(dān)憂是多余的。各位讀者可以回去測(cè)試一下,一般情況下這個(gè)密碼信息是不會(huì)記錄在這個(gè)文件中。其實(shí),大家可以想象一下,再輸入passwd命令后,輸入新密碼時(shí),在屏幕上也不會(huì)顯示用戶的輸入內(nèi)容,即新密碼。為此這個(gè)在屏幕上沒(méi)有輸出的內(nèi)容,也不會(huì)保存到這個(gè)記錄文件中。所以筆者說(shuō)用戶的這個(gè)擔(dān)憂是不必要的。

  第三是某些特定的命令不會(huì)記錄。筆者上面談到,有些鍵盤操作記錄是不會(huì)被保存的。即只要在屏幕上沒(méi)有輸出的信息一般情況下就不會(huì)給保存到記錄文件中。不過(guò)這是一個(gè)充分不必要條件。即反過(guò)來(lái)就不成立。并不是屏幕上所有顯示的內(nèi)容都會(huì)一五一十的記錄到這個(gè)文件中。像一些全屏模式的操作命令,如vi命令等等,就不會(huì)記錄到這個(gè)文件中。為此系統(tǒng)工程師在使用這個(gè)工具時(shí),需要預(yù)見(jiàn)到這種情況。在操作時(shí),如果需要記錄相關(guān)的會(huì)話過(guò)程,那么就需要盡量避免使用一些全屏的命令。如在設(shè)置環(huán)境變量時(shí),盡量不要直接利用vi修改相關(guān)的配置文件。而是使用set等非全屏命令來(lái)對(duì)環(huán)境變量進(jìn)行操作。如此操作系統(tǒng)才能夠記錄完成的操作過(guò)程。

  第四系統(tǒng)工程師需要了解一些特殊鍵在文件中是如何表示的。上面筆者所過(guò),記錄文件基本上會(huì)記錄所有的鍵盤敲擊動(dòng)作。如現(xiàn)在用戶輸入了ls -1命令先查看當(dāng)前目錄下的所有文件的詳細(xì)信息。后來(lái)用戶反悔了,就利用退格鍵將后面的-l參數(shù)去掉了。此時(shí)這個(gè)退格鍵的操作也會(huì)保存到記錄文件中。但是這些特定的功能鍵在文件中是采用一些特殊的符號(hào)來(lái)表示的。如退格鍵在文件中采用的是“[K”字符符號(hào)。所以向這個(gè)光標(biāo)移動(dòng)鍵或者del刪除鍵等等都有不同的代表方式。只有熟悉了這些代碼的含義之后,才可以真正的讀懂這個(gè)文件。不過(guò)其代表的形式雖然不同,但是還是有點(diǎn)規(guī)律可循。即一般特殊的功能鍵都是以[開(kāi)頭的。如果系統(tǒng)工程師看到有這個(gè)字符的話,那么就需要考慮這是否代表著某個(gè)特殊的功能鍵。

  第五是可以根據(jù)自己的需要來(lái)確定記錄的文件名與保存的路徑。如果系統(tǒng)工程師直接使用script命令的話,那么系統(tǒng)會(huì)自動(dòng)為這個(gè)文件命名。并且這個(gè)文件默認(rèn)是保存在命令執(zhí)行所在的目錄,即當(dāng)前目錄中。系統(tǒng)工程師在執(zhí)行命令時(shí),也可以自定義記錄文件的名字與保存路徑。如可以使用這個(gè)命令script log,讓系統(tǒng)將相關(guān)的記錄保存在當(dāng)前文件夾下的log文件中。如果這個(gè)文件不存在的話,系統(tǒng)會(huì)自動(dòng)創(chuàng)建這個(gè)文件。若存在的話,除非在命令中使用了-a參數(shù),否則的話,會(huì)覆蓋原有的文件。在覆蓋之前,不會(huì)提醒系統(tǒng)工程師。所以這一點(diǎn)系統(tǒng)工程師要引起重視,防止文件被意外刪除。

  第六是需要注意如果輸出結(jié)果中有圖片信息的話,在這個(gè)文件中無(wú)法正常讀取。如在會(huì)話記錄的過(guò)程中,使用了netconfig命令啟動(dòng)了一個(gè)圖形窗口。這個(gè)圖形窗口的信息不會(huì)在記錄文件中正確反映。系統(tǒng)工程師查看記錄文件時(shí),看到的可能只是一連串的[k符號(hào)而已。***需要說(shuō)明的是,script命令只是對(duì)當(dāng)前的會(huì)話有效。即即使在root帳戶下啟動(dòng)了script命令,則系統(tǒng)記錄的仍然是當(dāng)前會(huì)話的操作。對(duì)于其他用戶的會(huì)話不會(huì)有絲毫影響,也不會(huì)記錄其他用戶的操作。

【相關(guān)文章】

責(zé)任編輯:龐桂玉 來(lái)源: ChinaITLab
相關(guān)推薦

2014-06-16 09:44:56

Linux scripLinux命令

2010-09-07 15:34:14

2010-07-20 10:57:02

Telnet會(huì)話

2022-01-27 15:37:34

Asciinema終端會(huì)話記錄器開(kāi)源

2013-11-07 15:38:59

Linux命令行工具

2010-07-19 17:44:26

Telnet命令

2019-10-08 14:02:18

Linux命令終端會(huì)話

2018-07-03 14:00:44

Linux終端script命令

2019-06-11 15:46:13

screen命令Linux

2023-09-04 08:56:32

GoLandCopilotVsCode

2012-03-14 13:00:44

Play FramewJava

2011-10-17 09:31:39

maven

2010-11-11 10:03:58

SQL Delete命

2010-11-26 13:27:41

MySQL存儲(chǔ)過(guò)程

2010-11-22 09:19:19

SQLCDC

2010-01-13 08:56:46

Windows 7策略組關(guān)閉搜索紀(jì)錄

2018-08-29 13:55:56

VMware日志工具

2012-04-23 15:10:18

ASP.NET

2021-07-29 15:48:04

漏洞網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊

2023-11-27 14:53:38

人工智能AI
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)