Nel mio precedente articolo, Come acquisire sessioni di terminale e output con il comando di script Linux, che copre lo script
comando e alcune opzioni comuni, hai imparato come registrare le sessioni del terminale interattivo. Questo articolo di follow-up mostra come riprodurre quelle sessioni del terminale registrate.
L'unico avvertimento con la riproduzione delle sessioni è che le sessioni non sono "live". La funzione di riproduzione riproduce solo ciò che è nel file e non riflette le modifiche apportate da quando hai creato il scriptfile
. In altre parole, se nella tua sessione registrata, emetti i ls
comando per visualizzare il seguente elenco di file:
$ ls
test1 test2 test3 test4
e poi decidi di aggiungere un file chiamato test5
al di fuori dello script
registrazione, non apparirà quando la sessione viene riprodotta. Solo ciò che vedi nel scriptfile
appare nel replay. Puoi modificare il scriptfile
per includere il test5
file, ma per il resto non apparirà.
[ Potresti anche divertirti a leggere: L'amministratore di sistema non riesce:quando le dipendenze del servizio vanno male ]
Ripetizione della sessione
È semplice riprodurre una sessione registrata e la sintassi è quasi identica alla registrazione di una sessione, tranne per il fatto che usi scriptreplay
comando. Continuando con l'esempio dell'articolo precedente:
$ scriptreplay --timing=script_log scriptfile
Il punto interessante da notare sulla riproduzione degli script è che la riproduzione imita la velocità, le esitazioni, il backspace e i comandi scritti in modo errato. Puoi manipolare la velocità con scriptreplay
opzioni ma non è qualcosa che ho mai avuto bisogno di fare. Controlla la pagina man per le opzioni.
Di seguito è riportato un esempio di creazione di un file di script standard. Viene riprodotto usando il comando sopra. Noterai che sto salvando il script_log
e il scriptfile
nella directory sopra la mia directory di lavoro. Ciò garantisce che non vi siano confusione o elenchi di file che confondono la persona che guarda la riproduzione.
Ora, guarda il replay di questo script per vedere che il replay ha esattamente lo stesso ritmo dell'originale.
Dai un'occhiata a questo script più elaborato come dimostrazione del tipo di complessità che puoi incorporare in uno script
registrazione della sessione del terminale creata dal comando:
Come puoi vedere, le registrazioni delle sessioni del terminale possono essere piuttosto elaborate. La documentazione consiglia di non utilizzare lo script
comando all'interno di sessioni non interattive, come gli script automatizzati, perché il comportamento potrebbe non essere quello previsto. Sperimenta a tuo rischio e pericolo.
[ Corso gratuito:Panoramica tecnica di Red Hat Satellite. ]
Concludi
Questi esempi dimostrano quanto sia facile creare sessioni terminali registrate e come riprodurle per il tuo pubblico. Non c'è niente di magico in questo. Sii paziente e ricorda che non è necessariamente un male avere errori di battitura o altri errori nei tuoi video e può essere piuttosto frustrante cercare di crearne uno perfetto.