Einführung
Der write
Befehl in Linux erstellt eine Kommunikationsverbindung zwischen zwei angemeldeten Benutzern über das Terminal. Der Befehl ermöglicht das Senden von Nachrichten zwischen Benutzern in Echtzeit, indem Text von einem Terminal zum anderen kopiert wird.
Dieser Artikel zeigt anhand von Beispielen, wie Sie den Schreibbefehl verwenden.
Voraussetzungen
- Zugang zum Terminal.
- Eine Mehrbenutzerumgebung.
- Sudo-Gruppenrechte.
- Ein Texteditor zum Erstellen von Textdateien.
Linux-Schreibbefehlssyntax
Die Syntax für write
Befehl unter Linux ist:
write <user> <tty name>
Die user
Der Parameter ist obligatorisch und repräsentiert den Benutzernamen der Empfängerseite. Die tty name
gibt die Terminalumgebung an, falls mehrere Terminals geöffnet sind.
Die Kommunikation erfordert Schreibrechte. Aktivieren Sie die Berechtigung mit:
mesg y
Das Terminal gibt keine Meldung aus.
Beispiele für Linux-Schreibbefehle
Die write
Der Befehl erfordert mindestens zwei angemeldete Benutzer über eine pts- (Pseudo-Terminal-Slave) oder tty- (Teletyp-) Sitzung. Melden Sie sich an mit:
sudo login <username>
Wenn Sie beispielsweise mit zwei verschiedenen Benutzern auf demselben Computer arbeiten, führt jeder Benutzer den Befehl in seiner Terminalsitzung aus und gibt seinen Benutzernamen an.
Der Befehl fordert Sie auf, sudo und das Passwort des Benutzers einzugeben, um fortzufahren.
Um zu überprüfen, wer angemeldet ist, verwenden Sie den w-Befehl in einem der beiden Terminals wie folgt:
w
Die Ausgabe zeigt zwei Benutzer, die über eine pts-Konsole angemeldet sind, während der erste über eine lokale Anzeige (GUI) angemeldet ist. Der erste Benutzer hat login
ausgeführt Befehl für beide Benutzer.
Einem Benutzer eine Nachricht schreiben
Um eine Nachricht an einen anderen Benutzer zu schreiben, verwenden Sie den write
Befehl, gehen Sie wie folgt vor:
1. Führen Sie write
aus Befehl und geben Sie den Benutzer an:
write bob
Der Befehl erwartet die Eingabenachricht. Auf der Empfängerseite erhält der Benutzer eine Bestätigung über eine Verbindung mit den folgenden Informationen:
- Von wem die Nachricht stammt.
- Woher die Nachricht kommt.
- Der Zeitstempel.
2. Schreiben Sie eine Nachricht an den Benutzer. Enter drücken geht in eine neue Zeile und beendet die Nachricht nicht.
Dieselbe Nachricht erscheint auf der Empfängerseite in Echtzeit.
3. Um die write
zu beenden Befehl, drücken Sie STRG +D .
Der zweite Benutzer erhält eine EOF
Nachricht, die anzeigt, dass der Befehl beendet wurde.
Unterhaltung führen
Um ein Gespräch zwischen zwei Benutzern zu führen, verwenden Sie den write
Befehl, führe aus:
write bob
Senden Sie danach eine beliebige Nachricht. Führen Sie write
aus, damit der zweite Benutzer antwortet Befehl, der den Namen des ersten Benutzers angibt:
write kb
Da es keine richtige Möglichkeit gibt, zu unterscheiden, wann ein Benutzer eine Nachricht vervollständigt, endet eine Anweisung traditionell mit einem o
Zeichen (symbolisiert "über"). Um das Ende eines Gesprächs zu signalisieren, schreiben Sie oo
(für „über und aus“).
STRG +D sendet den EOF
Unterbrechungszeichen zum Beenden des Kommunikationskanals und beendet das Programm.
Eine Nachricht zum Schreiben weiterleiten
Verwenden Sie den echo-Befehl, um eine Nachricht einzugeben und zu write
zu leiten Befehl:
echo "Hello from KB" | write bob
Der Kommunikationskanal endet für den Sender sofort, während der Empfänger die Nachricht erhält und auf die Beendigung wartet.
Schreiben Sie eine Nachricht aus einer Datei
Gehen Sie wie folgt vor, um eine Nachricht aus einer Textdatei zu senden:
1. Erstellen Sie eine Textdatei mit einem Texteditor, z. B. nano:
nano message.txt
2. Fügen Sie der Datei Text hinzu.
3. Speichern Sie die Datei und schließen Sie nano (STRG +X , Y , Eingabe ).
4. Senden Sie den Inhalt der Datei über write
Befehl mit:
write bob < message.txt
Der Empfänger sieht die Nachricht aus der Textdatei.
Auf angegebenen TTY schreiben
Wenn ein Benutzer mehrere Terminalsitzungen geöffnet hat, wird der write
Der Befehl wählt das Terminal mit der kürzesten Leerlaufzeit aus.
Hinweis: Verwenden Sie den w
Befehl, um den TTY-Namen und die Leerlaufzeit zu überprüfen.
Führen Sie Folgendes aus, um anzugeben, an welches TTY gesendet werden soll:
write bob pts/0
Die Nachrichten kommen nur beim pts/0 TTY an.
In Bash-Skripten schreiben
Verwenden Sie write
in Bash-Skripten, um sich selbst oder einen anderen Benutzer zu benachrichtigen, wenn ein Befehl oder eine Aufgabe abgeschlossen ist. Sehen Sie sich zum Beispiel das folgende Bash-Skript an:
#!/bin/bash
sudo apt update -y
echo "Update completed" | write bob
sudo apt upgrade -y
echo "Upgrade completed" | write bob
Das Ausführen des Skripts startet ein Update und Upgrade auf einem System. Die write
Befehl hilft, den Benutzer bob
zu informieren Wenn jeder Schritt abgeschlossen ist, Drucken der Nachricht auf seinem Terminal.
Fazit
Nachdem Sie die Beispiele in diesem Tutorial durchgearbeitet haben, wissen Sie, wie Sie write
verwenden Befehl unter Linux.
Als Nächstes erfahren Sie, wie Sie den Bash-Lesebefehl verwenden und die Eingaben eines Benutzers speichern.