Úvod
write příkaz v Linuxu vytváří komunikační linku mezi dvěma přihlášenými uživateli přes terminál. Příkaz umožňuje posílání zpráv mezi uživateli v reálném čase kopírováním textu z jednoho terminálu do druhého.
Tento článek ukazuje, jak používat příkaz write prostřednictvím příkladů.
Předpoklady
- Přístup k terminálu.
- Prostředí pro více uživatelů.
- Oprávnění skupiny Sudo.
- Textový editor pro vytváření textových souborů.
Syntaxe příkazů zápisu Linux
Syntaxe pro write příkaz v Linuxu je:
write <user> <tty name>
user parametr je povinný a představuje uživatelské jméno přijímajícího konce. tty name specifikuje prostředí terminálu v případě více otevřených terminálů.
Komunikace vyžaduje oprávnění k zápisu. Povolte oprávnění pomocí:
mesg y Terminál nevydává zprávu.
Příklady příkazů zápisu Linuxu
write příkaz vyžaduje alespoň dva přihlášené uživatele prostřednictvím relace pts (pseudoterminál slave) nebo tty (dálnopis). Přihlaste se pomocí:
sudo login <username>
Pokud například pracujete na stejném počítači se dvěma různými uživateli, každý uživatel spustí příkaz ve své terminálové relaci a poskytne své uživatelské jméno.
Příkaz vyzve k zadání sudo a hesla uživatele, aby bylo možné pokračovat.
Chcete-li zkontrolovat, kdo je přihlášen, použijte příkaz w v kterémkoli terminálu takto:
w
Výstup zobrazuje dva uživatele přihlášené prostřednictvím konzole pts, zatímco první je přihlášen prostřednictvím místního displeje (GUI). První uživatel spustil login příkaz pro oba uživatele.
Napište zprávu uživateli
Chcete-li napsat zprávu jinému uživateli pomocí write proveďte následující:
1. Spusťte write a zadejte uživatele:
write bob
Příkaz očekává vstupní zprávu. Na přijímací straně obdrží uživatel potvrzení o připojení s následujícími informacemi:
- Od koho zpráva přichází.
- Odkud zpráva přichází.
- Časové razítko.
2. Napište zprávu uživateli. Stiskněte Enter přejde na nový řádek a zprávu neukončí.
Stejná zpráva se objeví na přijímací straně v reálném čase.
3. Ukončení write stiskněte CTRL +D .
Druhý uživatel obdrží EOF zpráva označující, že příkaz skončil.
Udržte konverzaci
Chcete-li vést konverzaci mezi dvěma uživateli pomocí write příkaz, spusťte:
write bob
Poté pošlete jakoukoli zprávu. Aby druhý uživatel odpověděl, spusťte write příkaz určující jméno prvního uživatele:
write kb
Protože neexistuje žádný správný způsob, jak rozlišit, kdy uživatel dokončí zprávu, tradiční způsob ukončení příkazu je o postava (symbolizující „over“). Chcete-li signalizovat konec konverzace, napište oo (pro "přes a ven").
CTRL +D odešle EOF znak přerušení pro ukončení komunikačního kanálu a ukončení programu.
Napsání zprávy
Pomocí příkazu echo zadejte zprávu a kanál na write příkaz:
echo "Hello from KB" | write bob
Komunikační kanál okamžitě skončí pro odesílatele, zatímco příjemce přijme zprávu a čeká na ukončení.
Napište zprávu ze souboru
Chcete-li odeslat zprávu z textového souboru, postupujte takto:
1. Vytvořte textový soubor pomocí textového editoru, jako je nano:
nano message.txt 2. Přidejte do souboru nějaký text.
3. Uložte soubor a zavřete nano (CTRL +X , Y , Zadejte ).
4. Odešlete obsah souboru prostřednictvím write příkaz s:
write bob < message.txt
Příjemce vidí zprávu z textového souboru.
Zapsat do zadaného TTY
Když má uživatel otevřeno více relací terminálu, zobrazí se write příkaz vybere terminál s nejkratší dobou nečinnosti.
Poznámka: Použijte w pro kontrolu názvu TTY a doby nečinnosti.
Chcete-li určit, kterému TTY se má odeslat, spusťte:
write bob pts/0
Zprávy přicházejí pouze do pts/0 TTY.
Psaní ve skriptech Bash
Použijte write ve skriptech Bash, abyste sebe nebo jiného uživatele upozornili na dokončení příkazu nebo úlohy. Podívejte se například na následující skript Bash:
#!/bin/bash
sudo apt update -y
echo "Update completed" | write bob
sudo apt upgrade -y
echo "Upgrade completed" | write bob
Spuštěním skriptu se spustí aktualizace a upgrade systému. write pomáhá informovat uživatele bob po dokončení každého kroku vytiskne zprávu na svůj terminál.
Závěr
Poté, co si projdete příklady v tomto tutoriálu, víte, jak používat write příkaz v Linuxu.
Dále se naučte, jak používat příkaz Bash read a uložit vstup uživatele.