Kif tirrekordja u terġa' tilgħab is-Sessjonijiet tat-Terminal tal-Linux bl-użu ta' Kmandi ta' skript u scriptreplay


F'din il-gwida ser inħarsu lejn kif tuża skript u kmandi ta' skriptreplay fil-Linux li jistgħu jgħinuk tirreġistra l-kmandi u l-output tagħhom stampat fuq it-terminal tiegħek waqt sessjoni partikolari.

Il-kmand tal-istorja huwa utilità kbira tal-linja tal-kmand li tgħin lill-utenti jaħżnu kmand preċedenti użat, għalkemm ma jaħżenx l-output ta 'kmand.

Għalhekk il-kmand tal-iskript jiġi utli biex jipprovdilek funzjonalità qawwija li tgħinek tirreġistra dak kollu li huwa stampat fit-terminal tiegħek f'log_file. Tista' mbagħad tirreferi għal dan il-fajl aktar tard f'każ li trid tara l-output ta' kmand fl-istorja mil-log_file.

Tista' wkoll terġa' tilqa' l-kmandi li rreġistrajt bl-użu tal-kmand scriptreplay billi tuża informazzjoni dwar il-ħin.

Kif Tirreġistra Terminal Linux billi tuża Kmand tal-iskript

Il-kmand tal-iskript jaħżen l-attivitajiet tat-terminal f'fajl log li jista 'jiġi msemmi minn utent, meta isem ma jiġix ipprovdut minn utent, jintuża l-isem tal-fajl default, ittajpjat.

# script [options] - -timing=timing_file log_filename

Biex tibda r-reġistrazzjoni tat-terminal Linux, ittajpja script u żid l-isem tal-fajl log kif muri.

[email  ~ $ script history_log.txt

Script started, file is history_log.txt

Biex twaqqaf l-iskript, ittajpja exit u agħfas [Enter].

[email  ~ $ exit

Script done, file is history_log.txt

Jekk l-iskrittura ma tistax tikteb fil-fajl tal-ġurnal imsemmi allura juri żball.

Pereżempju, fl-output hawn taħt, il-permessi tal-fajl typescript ma jippermettux qari, kitba u eżekuzzjoni tal-fajl mhux minn xi utent jew grupp. Meta tmexxi l-kmand tal-iskript mingħajr isem tal-fajl log, tipprova tikteb fil-fajl default, u b'hekk ittajpjat juri żball.

[email  ~ $ ls -l typescript

--------- 1 ubuntu ubuntu 144 Sep 15 00:00 typescript

[email  ~ $ script

script: open failed: typescript: Permission denied
Terminated

Jien semmejt il-fajl log tiegħi script.log fl-eżempju hawn taħt, tista' tagħti l-fajl tiegħek isem differenti.

[email  ~ $ script script.log

Issa ipprova tesegwixxi ftit kmandi biex tippermetti lill-iskript jirreġistra kmandi esegwiti fuq it-terminal.

[email  ~ $ cal

   September 2015     
Su Mo Tu We Th Fr Sa  
       1  2  3  4  5  
 6  7  8  9 10 11 12  
13 14 15 16 17 18 19  
20 21 22 23 24 25 26  
27 28 29 30           
                      
[email  ~ $ w

 14:49:40 up  4:06,  2 users,  load average: 1.37, 1.56, 1.62
USER     TTY      FROM             [email    IDLE   JCPU   PCPU WHAT
tecmint  tty8     :0               10:45    4:06m  7:40   0.36s x-session-manager
tecmint  pts/5    :0               13:42    4.00s  0.07s  0.00s script script.log

[email  ~ $ uptime

 14:49:43 up  4:06,  2 users,  load average: 1.37, 1.56, 1.62

[email  ~ $ whoami

tecmint

[email  ~ $ echo 'using script'

using script
[email  ~ $ exit
exit
Script done, file is script.log

Issa ipprova ara l-fajl log 'script.log' għall-kmandi kollha rreġistrati, filwaqt li tara l-log tirrealizza li l-iskritt jaħżen ukoll line feeds u backspaces.

[email  ~ $ vi script.log
^[[0m^[[255D^[[01;[email ^[[01;34m ~ $^[[00m cal^M
   September 2015     ^M
Su Mo Tu We Th Fr Sa  ^M
       1  2  3  4  5  ^M
 6  7  8  9 10 11 12  ^M
13 14 15 ^[[7m16^[[27m 17 18 19  ^M
20 21 22 23 24 25 26  ^M
27 28 29 30           ^M
                      ^M
^[[01;[email ^[[01;34m ~ $^[[00m w^M
 14:49:40 up  4:06,  2 users,  load average: 1.37, 1.56, 1.62^M
USER     TTY      FROM             [email    IDLE   JCPU   PCPU WHAT^M
tecmint  tty8     :0               10:45    4:06m  7:40   0.36s x-session-manager^M
tecmint  pts/5    :0               13:42    4.00s  0.07s  0.00s script script.log^M
^[[01;[email ^[[01;34m ~ $^[[00m uptime^M
 14:49:43 up  4:06,  2 users,  load average: 1.37, 1.56, 1.62^M
^[[01;[email ^[[01;34m ~ $^[[00m whoami^M
tecmint^M
^[[01;[email ^[[01;34m ~ $^[[00m echo ''^Hu'^Hs'^Hi'^Hn'^Hg'^H '^Hs'^Hc'^Hr'^Hi'^Hp'^Ht'^H^M
using script^M
^[[01;[email ^[[01;34m ~ $^[[00m exit^M
exit^M

Script done on Wednesday 16 September 2015 02:49:59 PM IST
~                                                              

Tista' tuża l-għażla -a biex tehmeż il-fajl log jew ittajpjat, filwaqt li żżomm il-kontenut preċedenti.

[email  ~ $ script -a script.log
Script started, file is script.log

[email  ~ $ date
Wed Sep 16 14:59:36 IST 2015


[email  ~ $ pwd
/home/tecmint


[email  ~ $ whereis script
script: /usr/bin/script /usr/bin/X11/script /usr/share/man/man1/script.1.gz


[email  ~ $ whatis script
script (1)           - make typescript of terminal session

Ara l-kontenut tal-iskrittura, log wara li tuża -a għażla biex tehmeżha.

[email  ~ $ vi script.log
^[[0m^[[255D^[[01;[email ^[[01;34m ~ $^[[00m date^M
Wed Sep 16 14:59:36 IST 2015^M
^[[01;[email ^[[01;34m ~ $^[[00m pwd^M
/home/tecmint^M
^[[01;[email ^[[01;34m ~ $^[[00m whre^H^[[K^H^[[Kereis script^M
script: /usr/bin/script /usr/bin/X11/script /usr/share/man/man1/script.1.gz^M
^[[01;[email ^[[01;34m ~ $^[[00m whatis script^M
script (1)           - make typescript of terminal session^M
^[[01;[email ^[[01;34m ~ $^[[00m vi s^H^[[K^H^[[K^H^[[K^H^[[Kexit^M
exit^M

Biex tilloggja r-riżultati ta' kmand wieħed minbarra sessjoni interattiva tal-qoxra, uża l-għażla -c.

[email  ~ $ script -c 'hostname' script.log

Script started, file is script.log
linux-console.net
Script done, file is script.log

Jekk trid li l-iskrittura taħdem f'mod kwiet allura tista' tuża l-għażla -q. Mhux se tara messaġġ li juri li l-iskript qed jibda jew joħroġ.

[email  ~ $ script -c 'who'  -q  script.log

tecmint  tty8         2015-09-16 10:45 (:0)
tecmint  pts/5        2015-09-16 13:42 (:0)

Biex tissettja l-informazzjoni dwar iż-żmien għal żball standard jew fajl uża l-għażla –timing. L-informazzjoni dwar il-ħin hija utli meta trid terġa' turi l-output maħżun fil-log_file.

Ejja nibdew l-iskrittura u nħaddmu l-kmandi w, uptime u cal li ġejjin biex jiġu rreġistrati.

[email  ~ $ script --timing=time.txt script.log
Script started, file is script.log

[email  ~ $ w
 15:09:31 up  4:26,  2 users,  load average: 1.38, 1.39, 1.47
USER     TTY      FROM             [email    IDLE   JCPU   PCPU WHAT
tecmint  tty8     :0               10:45    4:26m  8:15   0.38s x-session-manager
tecmint  pts/5    :0               13:42    3.00s  0.09s  0.00s script --timing=time.txt script.log

[email  ~ $ uptime
 15:09:36 up  4:26,  2 users,  load average: 1.43, 1.40, 1.48

[email  ~ $ cal
   September 2015     
Su Mo Tu We Th Fr Sa  
       1  2  3  4  5  
 6  7  8  9 10 11 12  
13 14 15 16 17 18 19  
20 21 22 23 24 25 26  
27 28 29 30    

Tista' tara l-fajl script.log u time.txt għall-kmand tal-ħin hawn fuq.

[email  ~ $ vi script.log
^[[0m^[[255D^[[01;[email ^[[01;34m ~ $^[[00m w^M
 15:12:05 up  4:28,  2 users,  load average: 1.31, 1.37, 1.45^M
USER     TTY      FROM             [email    IDLE   JCPU   PCPU WHAT^M
tecmint  tty8     :0               10:45    4:28m  8:20   0.38s x-session-manager^M
tecmint  pts/5    :0               13:42    5.00s  0.09s  0.00s script --timing=time.txt script.log^M
^[[01;[email ^[[01;34m ~ $^[[00m uptime^M
 15:12:07 up  4:28,  2 users,  load average: 1.29, 1.36, 1.45^M
^[[01;[email ^[[01;34m ~ $^[[00m cal^M
   September 2015     ^M
Su Mo Tu We Th Fr Sa  ^M
       1  2  3  4  5  ^M
 6  7  8  9 10 11 12  ^M
13 14 15 ^[[7m16^[[27m 17 18 19  ^M
20 21 22 23 24 25 26  ^M
27 28 29 30           ^M
                      ^M

Issa ara l-fajl time.txt.

[email  ~ $ vi time.txt
0.259669 306
0.037680 829
0.000006 2
0.000002 100
0.000002 2
0.000002 102
0.000019 202
0.000004 2
0.000002 102
0.000015 100
0.000002 2
0.000003 2
0.000002 99
0.000011 2
0.000003 82
...

Il-fajl time.txt għandu żewġ kolonni, l-ewwel kolonna turi kemm għadda żmien mill-aħħar wiri u t-tieni kolonna, turi n-numru ta 'karattri li ġew murija din id-darba.

Uża l-paġna man u –help biex tfittex aktar għażliet u tgħin fl-użu tal-utilità tal-linja tal-kmand tal-iskript.

L-użu ta' scriptreplay biex terġa' tilgħab skripts billi tuża informazzjoni dwar il-ħin

Il-kmand scriptreplay jgħin biex terġa' tilgħab l-informazzjoni fil-log_file tiegħek irreġistrata mill-kmand tal-iskript.

L-informazzjoni dwar il-ħin hija definita mill-għażla -timing=file użata mal-kmand tal-iskript u l-fajl f'dan il-każ huwa file.txt li ntuża mal-kmand tal-iskript .

Ftakar li għandek bżonn tispeċifika l-log_file li użajt mal-kmand tal-iskrittura.

Ejjew issa replay l-aħħar tliet kmandi w, uptime u cal li kellna mmexxija kif ġej.

[email  ~ $ scriptreplay --timing=time.txt script.log

Meta l-log_file replayed bl-użu tal-informazzjoni tal-ħin, il-kmandi rreġistrati jitmexxew u l-output tagħhom jintwera fl-istess ħin li l-output oriġinali kien muri waqt li kien irreġistrat.

Sommarju

Dawn iż-żewġ kmandi, script u scriptreplay faċli biex jintużaw u jgħinu ħafna meta jkollok bżonn tmexxi l-istess lott ta 'kmandi għal diversi drabi. Jgħinu ħafna fil-ġestjoni ta 'servers li għandhom biss interface tal-linja tal-kmand għall-interazzjoni mas-sistema tiegħek. Nittama li din il-gwida kienet utli u jekk għandek xi ħaġa xi żżid jew tiffaċċja sfida waqt li tużahom, toqgħodx lura milli tpoġġi kumment.