Présentation
Le write
La commande sous Linux crée une ligne de communication entre deux utilisateurs connectés via le terminal. La commande permet d'envoyer des messages entre utilisateurs en temps réel en copiant du texte d'un terminal à un autre.
Cet article montre comment utiliser la commande d'écriture à travers des exemples.
Prérequis
- Accès au terminal.
- Un environnement multi-utilisateurs.
- Privilèges de groupe Sudo.
- Un éditeur de texte pour créer des fichiers texte.
Syntaxe de la commande d'écriture Linux
La syntaxe du write
commande sous Linux est :
write <user> <tty name>
Le user
Le paramètre est obligatoire et représente le nom d'utilisateur du destinataire. Le tty name
spécifie l'environnement du terminal en cas de plusieurs terminaux ouverts.
La communication nécessite des autorisations d'écriture. Activez l'autorisation avec :
mesg y
Le terminal n'émet pas de message.
Exemples de commandes d'écriture Linux
Le write
La commande nécessite au moins deux utilisateurs connectés via une session pts (pseudo terminal esclave) ou tty (télétype). Connectez-vous avec :
sudo login <username>
Par exemple, si vous travaillez sur la même machine avec deux utilisateurs différents, chaque utilisateur exécute la commande dans sa session de terminal et fournit son nom d'utilisateur.
La commande invite à entrer le sudo et le mot de passe de l'utilisateur pour continuer.
Pour vérifier qui est connecté, utilisez la commande w dans l'un ou l'autre des terminaux comme suit :
w
La sortie montre deux utilisateurs connectés via une console pts, tandis que le premier est connecté via un affichage local (GUI). Le premier utilisateur a exécuté le login
commande pour les deux utilisateurs.
Écrire un message à un utilisateur
Pour écrire un message à un autre utilisateur en utilisant le write
commande, procédez comme suit :
1. Exécutez le write
commande et spécifiez l'utilisateur :
write bob
La commande attend le message d'entrée. À la réception, l'utilisateur reçoit la confirmation d'une connexion avec les informations suivantes :
- De qui provient le message.
- D'où vient le message.
- L'horodatage.
2. Écrivez un message à l'utilisateur. Appuyez sur Entrée entre dans une nouvelle ligne et ne termine pas le message.
Le même message apparaît sur le destinataire en temps réel.
3. Pour terminer le write
commande, appuyez sur CTRL +D .
Le deuxième utilisateur reçoit un EOF
message indiquant que la commande est terminée.
Tenir une conversation
Pour tenir une conversation entre deux utilisateurs en utilisant le write
commande, exécutez :
write bob
Envoyez n'importe quel message après. Pour que le deuxième utilisateur réponde, exécutez le write
commande spécifiant le nom du premier utilisateur :
write kb
Puisqu'il n'y a pas de moyen approprié de distinguer quand un utilisateur termine un message, la façon traditionnelle de terminer une déclaration est avec un o
caractère (symbolisant "plus"). Pour signaler la fin d'une conversation, écrivez oo
(pour "over and out").
CTRL +D envoie le EOF
caractère d'interruption pour terminer le canal de communication et terminer le programme.
Pipe un message à écrire
Utilisez la commande echo pour taper un message et diriger vers le write
commande :
echo "Hello from KB" | write bob
Le canal de communication se termine immédiatement pour l'expéditeur, tandis que le destinataire reçoit le message et attend la fin.
Écrire un message à partir d'un fichier
Pour envoyer un message à partir d'un fichier texte, procédez comme suit :
1. Créez un fichier texte à l'aide d'un éditeur de texte, tel que nano :
nano message.txt
2. Ajoutez du texte au fichier.
3. Enregistrez le fichier et fermez nano (CTRL +X , O , Entrez ).
4. Envoyez le contenu du fichier via le write
commande avec :
write bob < message.txt
Le destinataire voit le message du fichier texte.
Écrire dans le TTY spécifié
Lorsqu'un utilisateur a plusieurs sessions de terminal ouvertes, le write
sélectionne le terminal avec le temps d'inactivité le plus court.
Remarque : Utilisez le w
commande pour vérifier le nom TTY et le temps d'inactivité.
Pour spécifier à quel TTY envoyer, exécutez :
write bob pts/0
Les messages n'arrivent qu'au pts/0 TTY.
Écrire dans des scripts Bash
Utilisez write
dans les scripts Bash pour vous avertir ou avertir un autre utilisateur lorsqu'une commande ou une tâche est terminée. Par exemple, jetez un œil au script Bash suivant :
#!/bin/bash
sudo apt update -y
echo "Update completed" | write bob
sudo apt upgrade -y
echo "Upgrade completed" | write bob
L'exécution du script démarre une mise à jour et une mise à niveau sur un système. Le write
la commande permet d'informer l'utilisateur bob
à la fin de chaque étape, imprimer le message sur son terminal.
Conclusion
Après avoir parcouru les exemples de ce tutoriel, vous savez comment utiliser le write
commande sous Linux.
Ensuite, apprenez à utiliser la commande de lecture Bash et enregistrez l'entrée d'un utilisateur.