Whiptail Interactive Shell Skripte

Whiptail Interactive Shell Skripte
Shell -Skripte werden standardmäßig in der Befehlszeile ausgeführt. Es gibt jedoch eine Möglichkeit, interaktive Shell -Skripte zu erstellen, und es beinhaltet die Verwendung des Whiptail Linux -Befehls. Sie können verschiedene Dialogfelder erstellen, damit Ihre Skripte mit Whiptail abheben.

Skripte sind Teil des Linux -Lebens. Wenn Sie einen Weg finden, um terminale Benutzeroberflächen zu erstellen, die die Dinge cooler aussehen lassen, desto besser. In dieser Anleitung wird mit Beispielen mit Whiptail und seinen unterschiedlichen Dialogfeldern besprochen. Lass uns anfangen.

Whiptail installieren

Installieren Sie Whiptail mit dem folgenden Befehl:

$ sudo APT installieren Sie Whiptail

Whiptail -Kästchen

Bei der Verwendung von Whiptail stehen Ihnen verschiedene Kästchen zur Verfügung. Wir werden jeweils mit Beispielen besprechen. Jedes Whiptail -Feld muss die Größe des Dialogfelds angeben.

Nachrichtenbox

Ein Meldungsfeld zeigt eine Nachricht an den Leser an und hat nur eine OK -Schaltfläche, da keine Antwort erforderlich ist. Außerdem kann die Ausführung des Skripts nur einmal fortgesetzt werden, wenn die Eingabetaste gedrückt wird.

$ whiptail -msgbox "Ein Beispiel für ein Nachrichtenfeld. Drücken Sie OK, um fortzufahren."10 50

Die 10 und 50 repräsentieren die Breite und Höhe.

Ja/Nein Box

Wo Sie die Benutzerantwort mit beiden A erhalten müssen Ja oder NEIN Verwenden Sie vor dem Fortfahren die -ja Nein Möglichkeit.

Sie können ein Bash -Skript erstellen, wie unten gezeigt, dann speichern, es ausführbar machen und ausführen:

Hier ist die Ja/Nein -Whiptail -Box.

Die Ausgabe, die auf dem Terminal angezeigt wird, hängt davon ab, was der Benutzer auswählt.

Textfeld

Sie können den Inhalt einer Datei mit einem Textfeld anzeigen. Wenn der Dateiinhalt reichlich ist und gescrollt werden muss, können Sie die hinzufügen -Scrolltext Möglichkeit.

In unserem Fall werden wir eine Datei öffnen, Whiptail.txt.

$ whiptail -textbox -scrolltext whiptail.txt 10 50

Um das Textfeld zu schließen, klicken Sie auf die Taste Eingabetaste, sobald die Schaltfläche OK hervorgehoben ist.

Fortschrittsanzeige

Die Syntax zum Erstellen einer Fortschrittsleiste lautet:

$ -Gauge

Sie müssen den Namen der Fortschrittsleiste und den Prozentsatz definieren. Geben Sie dann an, wo der Zähler starten soll. In unserem Fall beginnt unser Zähler von 0 bis 100. Wir werden eine Weile anschließen, um den Zähler um 15 zu erhöhen und eine Schlafzeit von 1 Sekunde vor dem nächsten Inkrement festzulegen.

Die Fortschrittsleiste sollte wie das unten angegebene Bild aussehen:

Passwortbox

Wenn Sie den Benutzer benötigen, um ein Passwort in ein Eingabefeld einzugeben und den einfachen Text auszublenden, verwenden Sie die -Passwortbox So erstellen Sie ein Passwortbox.

$ whiptail -title "Geben

Der -Titel Die Option fügt dem Whiptail -Feld einen Titel hinzu.

Sobald Sie das Passwort eingeben und die OK -Taste drücken, wird das eingegebene Passwort in der Befehlszeile angezeigt.

Eingabefeld

Sie können die Benutzereingabe beim Schreiben eines Skripts erhalten und es für die Verwendung mit anderen Dingen speichern. Whiptail sendet jedoch Eingaben an die Stderr. Daher müssen Sie die Richtung des Eingangs umkehren, um auf dem anzuzeigen Stdout stattdessen. Um dies zu erreichen, müssen Sie hinzufügen 3> & 1 1> & 2 2> & 3.

Erstellen wir ein Bash -Skript, in dem die Benutzer aufgefordert werden, ihren Namen einzugeben und es dann mit einer Begrüßungsnachricht mit einem Nachrichtenfeld anzuzeigen.

Führen Sie das Skript aus. Die Ausgabe sollte zuerst ein Eingangsfeld sein, dann ein Meldungsfeld.

Das Meldungsfeld zeigt den eingegebenen Namen an.

Menübox

Der Benutzer muss nur die Eingabetaste für eine Menüleiste drücken, um ein Menüelement auszuwählen. Darüber hinaus wird kein Standardelement festgelegt. Der ausgewählte Element wird an Stderr zurückgegeben.

Die Ausgabe wird sein:

Radiolistenbox

Wenn der Benutzer nur eine Option auswählen muss, können Sie einen Radiolisten verwenden.

Wir erstellen eine Liste von Optionen, bei denen der Benutzer nur eine auswählen kann. Das ausgewählte Element wird in der Befehlszeile angezeigt. Drücken Sie die RABEBAR und klicken Sie dann auf die Eingabetaste, um ein Element auszuwählen.

Die Ausgabe wird in der folgenden Befehlszeile angezeigt:

Checkliste

Es funktioniert auf die gleiche Weise wie ein Radiolisten, aber Sie können mehr als ein Element mit der Checkliste auswählen. Darüber hinaus können Sie die Standardwerte festlegen, indem Sie sie einstellen AN.

Unser Kontrolllisten -Anzeigefeld:

Die Ausgabe:

Abschluss

Whiptail bietet Ihnen verschiedene Dialogfelder für verschiedene Aktivitäten. In diesem Artikel haben wir die meisten Whiptail -Boxen abgedeckt, die Sie verwenden können. Wie Sie die Ausgabe der Skripte anzeigen möchten, basiert ganz auf Ihrer Präferenz. Sie können jedoch die Befehlszeile oder die Whiptail -Boxen verwenden, sofern sie für Sie funktioniert. Schauen Sie sich auch die Seite von Whiptail Man und die LinuxHint -Website an, um weitere Tipps zu erhalten.