Linux Wall Befehl Tutorial für Anfänger (mit Beispielen)
Es gibt Zeiten, in denen mehrere Benutzer an einem Servercomputer angemeldet sind, und Sie – der System-/Netzwerkadministrator – müssen den Server beispielsweise neu starten, um eine Wartungsaufgabe durchzuführen. Natürlich ist es der richtige Weg, alle angemeldeten Personen über die Wartungsaktivitäten zu informieren.
Glücklicherweise bietet Linux ein integriertes Befehlszeilenprogramm für diesen Zweck. Das fragliche Tool ist Wall, und in diesem Tutorial werden wir die Grundlagen dieses Tools anhand einiger leicht verständlicher Beispiele diskutieren. Aber bevor wir das tun, ist es erwähnenswert, dass alle Beispiele in diesem Artikel auf einem Ubuntu 16.04 LTS-Rechner getestet wurden.
Linux-Wandbefehl
Wie bereits erwähnt, wird der Wandbefehl verwendet, um eine Nachricht an alle angemeldeten Benutzer zu senden. Folgendes ist seine Syntax:
wall [-n] [-t TIMEOUT] [file]
Und so beschreibt es die Man Page des Tools:
Wall displays the contents of file or, by default, its standard input, on the terminals of all currently logged in users. The command will cut over 79 character long lines to new lines. Short lines are white space padded to have 79 characters. The command will always put carriage return and new line at the end of each line.
Only the super-user can write on the terminals of users who have chosen
to deny messages or are using a program which automatically denies mes?
sages.
Reading from a file is refused when the invoker is not superuser and the
program is suid or sgid.
Im Folgenden finden Sie einige Beispiele im Q&A-Stil, die Ihnen eine gute Vorstellung davon vermitteln sollen, wie der Wandbefehl funktioniert.
Q1. Wie benutze ich den Wandbefehl?
Die grundlegende Bedienung ist sehr einfach – führen Sie einfach den Befehl „wall“ aus und schreiben Sie die zu übertragende Nachricht auf die Standardeingabe. Verwenden Sie nach der Bearbeitung die Tastenkombination Strg+D, um dem Befehl zu signalisieren, dass Sie mit dem Schreiben der Nachricht fertig sind.
wall
Hier ist zum Beispiel der erste Schritt, wenn der Text auf stdin eingegeben wird:
Hier ist der zweite Schritt, wenn Strg+D mehrmals gedrückt wird und die Nachricht gesendet wird:
Und hier ist, wie andere angemeldete Benutzer die Nachricht sehen:
Q2. Wie kann man den Header von der übertragenen Nachricht entfernen?
Wenn Sie den Header entfernen möchten, der mit den übertragenen Nachrichten erscheint, können Sie dies mit der Befehlszeilenoption -n tun.
wall -n
Zum Beispiel die folgende Aktion:
wall -n Message without header ^D
Es entstand die folgende Ausgabe:
Q3. Wie kann man sicherstellen, dass die Wand Eingaben aus einer Datei akzeptiert?
Dies kann erreicht werden, indem der Name der Datei als Eingabe an den Wandbefehl übergeben wird.
wall [filename]
Zum Beispiel:
wall input.txt
Wobei input.txt die folgende Zeile enthält:
This message is from a file
Und hier ist die Ausgabe:
Q4. Welche anderen Möglichkeiten gibt es, den Wandbefehl zu verwenden?
Es gibt noch einige andere Möglichkeiten, wie du den Wandbefehl verwenden kannst. Zum Beispiel:
echo "test message" | wall
wall << . > test message > .
wall <<< "test message"
Fazit
Abschließend möchte ich sagen, dass der Wandbefehl ein Muss ist, wenn Sie System-/Netzwerkadministrator sind, und der Großteil Ihrer Arbeit besteht in der Verwaltung von Headless-Servern, die von mehreren Benutzern verwendet werden. Wir haben die meisten Funktionen des Wandbefehls besprochen. Um mehr zu erfahren, gehen Sie bitte auf die Man Page des Tools.