Commande echo du Shell
echoest une commande Shell intégrée utilisée pour afficher une ligne de texte ou la valeur d'une variable sur la sortie standard (généralement le terminal).
La commande echo de Shell est similaire à la commande echo de PHP ; toutes deux servent à afficher des chaînes de caractères.
Format de commande :
echo [选项] [字符串]
Pourquoi avez-vous besoin d'echo ?
- Retour d'information: Afficher l'état d'exécution du script ou les résultats à l'utilisateur
- Outil de débogage: Afficher les valeurs des variables ou la position d'exécution pour aider à déboguer les scripts
- Interface interactive: Créer une interface d'interaction utilisateur simple
- Génération de fichiers: Générer rapidement des fichiers de configuration ou des scripts
Utilisation de base
1. Sortie de texte simple
L'utilisation la plus basique consiste à afficher directement une chaîne :
Exemple
Résultat de l'exécution:
Hello, World!
2. Sortie de variables
echoVous pouvez afficher la valeur d'une variable :
Exemple
echo "Bienvenue, $name!"
Résultat de l'exécution:
Welcome, Linux User!
3. Sortie sans guillemets
Les guillemets ne sont pas obligatoires, mais il est recommandé de les utiliser pour éviter les accidents :
Exemple
Résultat de l'exécution:
This is a test
Options courantes
option -n : sortie sans saut de ligne
Par défaut,echoajoute un saut de ligne après la sortie. L'utilisation de-npeut empêcher ce comportement :
Exemple
echo " Terminé !"
Résultat de l'exécution:
Loading... Done!
option -e : activer l'interprétation des caractères d'échappement
Activer l'interprétation des échappements par barre oblique inverse :
Exemple
Résultat de l'exécution:
First line Second line
Séquences d'échappement courantes
| Séquence d'échappement | Description |
|---|---|
\n |
Nouvelle ligne |
\t |
Tabulation horizontale |
\v |
Tabulation verticale |
\b |
Retour arrière |
\r |
Retour chariot |
\\ |
Le caractère barre oblique inverse lui-même |
Utilisation avancée
1. Sortie vers un fichier
Utilisez la redirection pour enregistrer la sortie dans un fichier :
Exemple
Ajouter du contenu à la fin d'un fichier :
Exemple
2. Sortie colorée
Utilisez des codes d'échappement ANSI pour implémenter du texte coloré :
Exemple
echo -e "\033[42;31mFond vert avec texte rouge\033[0m"
Référence des codes de couleur:
- Couleurs de premier plan : 30 (noir), 31 (rouge), 32 (vert), 33 (jaune), 34 (bleu), 35 (violet), 36 (cyan), 37 (blanc)
- Couleurs d'arrière-plan : 40-47 correspondent aux couleurs ci-dessus
\033[0mRéinitialiser tous les attributs
3. Afficher le résultat de l'exécution de la commande
Utilisez la substitution de commande pour afficher les résultats des commandes :
Exemple
Résultat de l'exécution:
Today is Wed Jul 12 14:30:22 CST 2023
Exemples d'applications pratiques
1. Créer un menu simple
Exemple
echo "1. Vérifier l'espace disque"
echo "2. Lister les processus en cours"
echo "3. Afficher les informations système"
echo -n "Veuillez saisir votre choix [1-3] : "
2. Simulation de barre de progression
Exemple
for i in {1..20}; do
echo -n "#"
sleep 0.1
done
echo "] Terminé !"
3. Générer le fichier de configuration
Exemple
# Généré par le script le $(date)
[Base de données]
host = localhost
port = 3306
user = appuser
password = secret123
EOF
Notes
1. L'importance des guillemets:
Exemple
echo $var # Peut poser problème si la variable contient des espaces
echo "$var" # Manière correcte
2. Différences d'implémentation entre différents shells:
- Intégré à Bash
echoSupports-eoption - Sur certains systèmes,
/bin/echopeut ne pas prendre en charge toutes les options - Pour des scripts portables, il est recommandé d'utiliser
printfpour remplacer des complexesecho
3. Gestion des caractères spéciaux:
Exemple
echo "Chemin : /usr/local/bin" # Les barres obliques n'ont pas besoin d'être échappées
Points de résumé
| Point clé | Description |
|---|---|
| Syntaxe de base | echo [选项] [字符串] |
| Options courantes | -nPas de saut de ligne,-eActiver les échappements |
| Sortie de variable | Utiliser$variable name, il est recommandé de mettre entre guillemets doubles |
| Sortie colorée | Utiliser les codes d'échappement ANSI\033[XXm |
| Redirection de sortie | >Écraser le fichier,>>Ajouter à un fichier |
| Sortie multiligne | Utiliser\nsaut de ligne ou Here Document |
| Recommandations de portabilité | Pour une sortie complexe, envisagez d'utiliserprintf |