Heim  >  Artikel  >  Backend-Entwicklung  >  Linux-Shell zum Erstellen von Aufnahme- und Wiedergabefunktionsskripts

Linux-Shell zum Erstellen von Aufnahme- und Wiedergabefunktionsskripts

php中世界最好的语言
php中世界最好的语言Original
2017-12-20 13:40:041947Durchsuche

Ich habe bereits zwei sehr interessante Befehle gesehen: script und srciptreplay, die die Terminalsitzung in einer Datei aufzeichnen können. Heute werde ich Ihnen einige interessante und sinnvolle Vorgänge vorstellen.

1. Implementierungscode

Datei: Record.sh

#! /bin/bash
# Filename:Record.sh
  
read -p "Please input the sesson filename you want to creat: " filename;
  
sesfile="$filename.session"
logfile="$filename.timing.log"
  
if [ -e $sesfile ];then
  echo "$sesfile is Exsit,Creat session file fault!";
  read -p "If you want to reload the file? [Y/N]: " flag;
  if [ "$flag" = "Y" ];then
    rm $sesfile $logfile;
    script -t 2> $logfile -a $sesfile;
  else
    echo "Nothing to do!";
  fi
    
else
  script -t 2> $logfile -a $sesfile;
fi


Datei: Replay.sh

#! /bin/bash
# Filename:Replay.sh
  
read -p "Please input the session filename: " filename
logfile="$filename.timing.log"
sesfile="$filename.session"
if [ -e $sesfile ]; then
  scriptreplay $logfile $sesfile
  echo
else
  echo "$filename is NOT Exsit!"
fi


2. Programmanalyse

Lassen Sie uns zunächst darüber sprechen, wofür diese beiden Dateien verwendet werden zeichnet die von Ihnen ausgeführten Befehle und die Ausgabe auf dem Bildschirm auf, und Replay.sh wird zum Abspielen des von Record.sh aufgezeichneten Inhalts verwendet.

In Record.sh werden Sie zunächst aufgefordert, einen Dateinamen einzugeben, um Informationen wie die Ausgabe zu speichern, und erstellen dann zwei Dateien im Programm. Die Dateinamen sind die von Ihnen eingegebenen Dateinamen plus verschiedene Suffixe B. „output.timing.log“ und „output.session“, und prüft dann, ob die Eingabedatei bereits vorhanden ist. Wenn ja, wird die alte Datei mit der neuen Datei überschrieben das Original Wenn eine Datei vorhanden ist, erstellen Sie eine neue Datei und schreiben Sie Daten. Wenn nicht, führen Sie keine Arbeit durch. Geben Sie einen Dateinamen in Replay.sh ein, ermitteln Sie zunächst, ob die Datei vorhanden ist, und spielen Sie sie ab, falls sie vorhanden ist.

In Record.sh können Sie sehen, dass es sich bei den Parametern des Skripts um zwei Dateien handelt. Um die Identifizierung zu erleichtern, habe ich dem eingegebenen Dateinamen ein bestimmtes Suffix hinzugefügt, auch unter

Linux Das Dateisuffix ist bedeutungslos. Eines der Suffixe, .timing.log, wird zum Speichern von Zeitinformationen verwendet, die beschreiben, wann jeder Befehl ausgeführt wird. Die andere Datei mit dem Suffix .session wird zum Speichern der Befehlsausgabe verwendet. Mit diesen beiden Dateien kann die Wiedergabefunktion meiner Meinung nach ein wenig wie die Wiedergabefunktion der bekannten lrc-Liedtextdatei unter Windows realisiert werden.

Da es zwei Arten der Ausgabe gibt, müssen wir die Datenstromumleitung verwenden, um verschiedene Ausgabeströme in verschiedene Dateien auszugeben. Wir können auch in Record.sh sehen, dass wir 2> verwenden *.timing.log bis stderr, und die Befehlsausführungsinformationen werden in die Datei *.session bis > geschrieben.

Replay.sh ist relativ einfach. Es muss lediglich festgestellt werden, ob die Eingabedatei vorhanden ist, bevor sie abgespielt werden kann. Wenn Sie die oben in Record.sh erstellte Datei abspielen möchten, müssen Sie nur die Ausgabe eingeben.


Ich glaube, dass Sie die Methoden beherrschen, nachdem Sie diese Fälle gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Verwandte Lektüre:

Detailliertes Beispiel für die Ajax-Implementierung des Hochladens von Dateien ohne Aktualisierung

Verwendung von jQuery+Ajax in PHP für Paging-Abfragefunktion implementieren

AJAX-Implementierung eines Beispielcodes für eine einfache asynchrone Registrierungsseite-Anfrage

Das obige ist der detaillierte Inhalt vonLinux-Shell zum Erstellen von Aufnahme- und Wiedergabefunktionsskripts. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn