in

Comment utiliser la commande tee sous Linux

Points clés à retenir

  • La commande « tee » sous Linux enregistre la sortie d’une commande dans un fichier tout en l’affichant également sur le terminal.
  • Il peut également écrire la sortie dans plusieurs fichiers simultanément, permettant une sauvegarde et un suivi faciles des journaux système.
  • La commande « tee » peut également être utilisée avec d’autres commandes via piping. Cela permet un traitement ultérieur de la sortie tout en l’enregistrant dans un fichier. Par exemple, vous pouvez l’utiliser avec « ls » dans cette commande : « ls ~ | tee list.txt »

Le tee La commande peut enregistrer le résultat de vos commandes pour une révision ultérieure. Cette commande affiche non seulement la sortie à l’écran, mais l’enregistre également dans un fichier journal séparé. Supposons que vous souhaitiez sauvegarder la sortie du df commande dans un fichier afin que vous puissiez suivre votre utilisation de l’espace disque au fil du temps. Cette commande vous aide à dépanner un processus car elle conserve un enregistrement écrit des processus.

Qu’est-ce que la commande tee sous Linux ?

Le Linux tee La commande est un outil utile pour gagner du temps et améliorer l’efficacité sous Linux. Il peut lire l’entrée standard (stdin) et écrivez-le sur la sortie standard (stdout) et le ou les fichiers que vous spécifiez. Le tee La commande fonctionne comme un tuyau en forme de T qui divise l’eau en deux directions. Il vous permet de visualiser la sortie d’un programme et de l’enregistrer simultanément dans un fichier.

Le tee la commande fait les deux choses ensemble. Il vous permet de copier la sortie dans les fichiers ou variables que vous choisissez et de vous l’afficher. Cette commande est également utilisée dans les scripts shell et les commandes de terminal pour envoyer la sortie à différents emplacements. Vous pouvez utiliser le tee commande pour effectuer des sauvegardes, rechercher des erreurs dans les scripts et suivre les journaux système.

Le tee La commande vous permet également de le canaliser avec d’autres commandes. De cette façon, vous pouvez enregistrer la sortie dans un fichier et la traiter davantage avec n’importe quelle autre commande.

Presque toutes les distributions Linux sont livrées avec le tee commande préinstallée, qui fait partie du package Coreutils.

Le tee La commande suit une syntaxe similaire à celle des autres commandes Linux. Il a deux arguments, –OPTIONS et FILES :

tee [OPTION]... [FILE]...

Pour savoir quelle version du tee commande que vous utilisez, exécutez simplement la commande suivante :

tee --version

Si vous avez besoin d’aide avec la syntaxe et les arguments disponibles pour le tee commande, tapez ceci :

tee --help

aide à la commande tee

Options de commande de tee

Le tee La commande dispose de plusieurs options pour modifier sa fonctionnalité. Le tableau ci-dessous présente quelques options qui vous aideront à utiliser le tee commander efficacement :

Option

Description

-a or --append

Ajoutez la sortie à la fin des fichiers au lieu de les écraser.

-i or --ignore-interrupts

Ignorez les signaux d’interruption tels que Ctrl+C.

-p or --output-error

Imprimez un message d’erreur sur l’erreur standard pour chaque erreur qui se produit lors de l’écriture dans des fichiers.

--help

Afficher une aide de base relative aux options de commande.

--version

Afficher le tee version de commande.

Enregistrer la sortie dans un fichier sous Linux à l’aide de tee

Le tee La commande enregistre la sortie d’une commande dans un fichier tout en l’affichant également sur le terminal. Par exemple, le tee La commande vous permettra de voir les fichiers et répertoires de votre répertoire personnel et de les enregistrer également dans un fichier séparé. Pour ce faire, canalisez le tee commande avec ls commande comme suit :

ls ~ | tee list.txt

ls avec la commande tee et enregistrez la sortie dans un fichier texte

Cela affichera tous les fichiers et répertoires de votre répertoire personnel et les écrira dans « list.txt ». Pour afficher le contenu du « list.txt », utilisez n’importe quel éditeur de texte ou commande comme cat, lessou more commande.

cat list.txt

commande cat pour lire un fichier texte de liste

Faisons un autre exemple avec un echo commande pour enregistrer et afficher la sortie. Tout d’abord, utilisez le echo commande pour imprimer du texte sur le terminal. Après cela, j’ai diffusé le tee commande avec le echo commande pour écrire le même texte dans un fichier appelé « output.txt ».

echo "Welcome to Ubuntu" | tee output.txt

pipe de commande echo avec la commande tee

Enfin, utilisez le cat commande pour vérifier le contenu du fichier « output.txt ».

cat output.txt

commande cat pour lire le contenu d'un fichier texte

Écrire la sortie dans plusieurs fichiers sous Linux à l’aide de tee

Le tee La commande peut également écrire la sortie dans plusieurs fichiers simultanément. Il vous suffit de définir les noms de fichiers après le tee commande dans laquelle vous souhaitez écrire. Séparez-les simplement par des espaces.

Par exemple, pour enregistrer la sortie du echo commande vers trois fichiers différents, utilisez la syntaxe suivante :

echo "Welcome to Ubuntu" | tee file1.txt file2.txt file3.txt

commande echo transmise avec la commande tee avec plusieurs noms de fichiers

Cela écrira la chaîne « Bienvenue sur Ubuntu » dans trois fichiers : file1.txt, file2.txt et file3.txt. Il les affiche également sur le terminal. Pour afficher le contenu de ces fichiers, utilisez le cat ou head commande:

head -v file1.txt file2.txt file3.txt

commande head pour lire le contenu de plusieurs fichiers texte

De même, le cat La commande affichera également la sortie identique :

cat -v file1.txt file2.txt file3.txt

commande cat pour lire le contenu de plusieurs fichiers texte

Vous pouvez écrire la sortie dans n’importe quel nombre de fichiers avec le tee commande. Tapez simplement les noms de fichiers après le tee commande avec des espaces entre eux.

Ajouter la sortie à un fichier à l’aide de tee

Le tee La commande sous Linux écrase le contenu du fichier par défaut. Le -a ou --append possibilité avec le tee La commande vous permet d’ajouter la sortie à la fin des fichiers au lieu de remplacer leur contenu.

Avant d’ajouter des données au fichier, vérifions les données actuelles placées dans le fichier à l’aide de la commande ci-dessous :

cat output.txt

commande cat pour lire les données du fichier output.txt

Maintenant, nous pouvons ajouter les nouvelles données sans les écraser en tapant ceci :

echo "tee Command on Linux" | tee -a output.txt

commande echo canalisée avec un tee et une option -a pour ajouter la sortie au fichier existant

Cela ajoutera la sortie d’une commande à la fin de output.txt, sans supprimer aucun contenu précédent. Pour vérifier, exécutez le cat commande:

cat output.txt

commande cat qui lit le fichier texte de sortie

Masquer la sortie à l’aide du tee

Parfois, vous souhaiterez peut-être stocker le résultat d’une commande dans un fichier sans l’afficher sur le terminal. Cela peut être utile si vous souhaitez exécuter une commande en silence, sans encombrer votre terminal avec des sorties inutiles. Dans de tels cas, vous devez diriger la sortie de la commande vers le /dev/null appareil. Le /dev/null est souvent appelé « périphérique nul » ou « fichier nul ». Il agit comme un récepteur de données, ce qui signifie que toutes les données qui y sont écrites sont supprimées et ne sont stockées nulle part.

Voici un moyen de masquer la sortie du echo commande:

echo "Welcome to Ubuntu" | tee output.txt > /dev/null

commande echo transmise avec la commande tee et le périphérique dev null

Cela écrira la sortie d’une commande dans output.txt et l’enverra également à /dev/null, ce qui le cachera efficacement de l’écran. Cependant, le cat La commande vous permettra de vérifier la sortie en affichant le contenu du fichier :

cat output.txt

commande cat pour lire le contenu du fichier texte-1

Rediriger la sortie d’une commande vers une autre à l’aide de tee

Le tee La commande peut également rediriger la sortie d’une commande vers un fichier ou toute autre commande. Le tee La commande avec un tube (|) vous permettra d’envoyer la sortie de la première commande à la fois à la sortie standard et à la deuxième commande ou fichier. Prenons l’exemple suivant :

echo "This is Ubuntu" | tee output.txt | wc -c

commande echo diffusée avec tee et wc pour rediriger la sortie

Le echo Le résultat de la commande « Bienvenue sur Ubuntu » est écrit dans le fichier output.txt. Après cela, l’opérateur du pipeline est utilisé avec le tee commande. Cela transmettra le contenu du fichier au wc commande. Le wc La commande affichera le nombre total de caractères comptés et affichera une valeur entière.

Pour vérifier si le tee La commande a également écrit la sortie dans un fichier, utilisez le cat commande pour afficher le contenu du fichier :

cat output.txt

Commande Cat qui lit le fichier texte de sortie

Utiliser la commande tee avec sudo

Lorsque vous utilisez le tee commande, il écrit la sortie d’une commande dans un fichier normal. Cependant, certains fichiers et répertoires tels que les répertoires système ou les fichiers protégés nécessitent des privilèges de superutilisateur pour être modifiés. Pour écrire dans ces fichiers ou dans des fichiers appartenant à d’autres utilisateurs, utilisez tee en collaboration avec sudo.

Dans l’exemple ci-dessous, lorsque vous essayez d’écrire un fichier « file.conf » appartenant à root sans utiliser sudocela vous donnera une erreur d’autorisation refusée.

echo "This is Ubuntu" | tee -a /etc/file.conf

commande echo transmise avec la commande tee sans autorisation sudo

Cependant, lorsque vous utilisez le sudo avec le tee commande, cela s’exécutera sans aucune erreur. Vous pouvez utiliser le sudo commande pour exécuter le tee commande en tant qu’utilisateur root ou propriétaire du fichier. Ajoutez simplement un préfixe sudo avec le tee commande:

echo "This is Ubuntu" | sudo tee -a /etc/file.conf

commande echo transmise avec la commande tee avec l'autorisation sudo

Premièrement la tee la commande prendra le echo sortie de commande. Après cela, il s’élève à sudo autorisations et écrit le texte dans le fichier.

Exemples d’utilisation de tee dans un script Bash

Le tee La commande peut être utile dans divers scénarios de script. Il vous aide à enregistrer ou capturer le résultat d’une commande pour un traitement ultérieur ou un débogage. Le tee La commande affichera non seulement la sortie, mais l’enregistrera également dans un ou plusieurs fichiers pour une utilisation ultérieure.

Par exemple, si vous souhaitez voir la date et l’heure sur le terminal et également les écrire dans un fichier nommé log.txt, utilisez le script bash suivant :

 #!/bin/bash
date | tee log.txt

Script Bash pour enregistrer la date dans le fichier journal

Dans ce cas, l’entrée standard est la sortie de la commande date, qui affiche la date et l’heure actuelles. Le tee La commande écrit cette sortie sur le terminal et dans le fichier log.txt. Si le fichier log.txt n’existe pas, il sera créé. S’il existe, il sera écrasé, sauf si vous utilisez le -a option à ajouter au fichier.

cat log.txt

Commande Cat qui lit le contenu du fichier journal

Vous pouvez également utiliser le tee commande pour écrire dans plusieurs fichiers en spécifiant plus de noms de fichiers comme arguments.

 #!/bin/bash
date | tee log1.txt log2.txt

Script Bash pour écrire plusieurs fichiers à l'aide de la commande tee

Ce script imprime la date et l’heure sur le terminal et dans deux fichiers nommés log1.txt et log2.txt. Lisez le contenu des deux fichiers en utilisant cat commande.

cat log1.txt log2.txt

Commande Cat qui lit le contenu de plusieurs fichiers texte de journal

Considérons un autre script bash simple qui prend une entrée et la stocke dans un fichier journal, en utilisant le tee commande.

 #!/bin/bash
log_file="user_input.log"
echo "Please enter some text:"
read user_input
echo "$user_input" | tee -a "$log_file"
echo "User input has been logged to $log_file"

Script Bash qui lit les entrées de l'utilisateur et affiche la sortie sur le terminal

Dans le script bash donné, définissez une variable appelée « log_file » et attribuez-lui le nom du fichier journal que vous souhaitez utiliser, tel que « user_input.log ». Ensuite, utilisez le echo commande et le read commande pour vous inviter à saisir du texte et à le stocker dans une variable. Ensuite, utilisez le tee commande avec le -a option pour afficher l’entrée entrée sur le terminal et l’ajouter au fichier journal.

Enfin, utilisez le echo commandez à nouveau pour donner votre avis. Cela vous indiquera que votre entrée a été enregistrée dans le fichier. De cette façon, il vous permet de créer un script bash qui enregistre votre entrée dans un fichier journal et l’affiche à l’écran.

Exécutez le script bash en utilisant bash commande.

bash test.sh

commande bash qui exécute le script de test

Surveillance des processus sur votre système Linux

Pour garder un œil sur le fonctionnement de votre système Linux, vous devez observer les activités de ses processus. Cela inclut l’utilisation du processeur et de la mémoire, les E/S du disque et l’activité réseau. L’identification des goulots d’étranglement en matière de performances permet d’optimiser les ressources du système et de garantir que votre système fonctionne efficacement.

Comme le tee commande, Linux dispose de plusieurs autres commandes qui vous aident à surveiller facilement les processus. Certaines des commandes principales incluent ps, topet pgrep commande. Les systèmes Linux exécutent souvent plusieurs processus simultanément. À l’aide de ces commandes, vous pouvez hiérarchiser les tâches critiques, allouer les ressources de manière appropriée et éviter les conflits de ressources.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Comment installer Linux dans VirtualBox

Comment installer Linux dans VirtualBox

Comment démarrer avec pare-feu sous Linux

Comment démarrer avec pare-feu sous Linux