echo est une commande intégrée du shell utilisée pour imprimer les informations/le message sur votre terminal. Il s'agit de la commande la plus populaire disponible dans la plupart des distributions Linux. Elle est généralement utilisée dans les scripts bash et les fichiers de commandes pour imprimer le texte/la chaîne d'état à l'écran ou dans un fichier.
Dans cet article, je vais vous montrer comment utiliser la commande echo dans les scripts shell Linux.
Comment utiliser la commande echo sous Linux
Lors de l'apprentissage des scripts shell, c'est la première commande que vous apprendrez à imprimer quelque chose dans votre terminal. écho imprimera la sortie sur stdout ou vous pouvez également rediriger la sortie vers des fichiers. Il existe deux versions d'écho. L'un est intégré à bash et le second est une commande externe.
REMARQUE :La version intégrée a toujours priorité sur la commande externe.
Utilisez la commande de type pour obtenir les informations de chemin sur la commande echo .
$ type -a echo echo is a shell builtin echo is /usr/bin/echo echo is /bin/echo
Pour obtenir la liste des options prises en charge pour la commande echo , utilisez l'option d'aide.
$ help echo
Exemple 1 :Aucun argument pour faire écho à la commande
Lorsque vous appelez la commande echo sans passer aucun argument, il imprime une ligne vide.
$ echo

Exemple 2 :Utiliser echo avec et sans guillemets
Vous pouvez passer des arguments à echo commande avec ou sans guillemets. Jetez un oeil à l'exemple ci-dessous. J'imprime la même déclaration avec des guillemets simples et doubles et sans guillemets et j'obtiens le même résultat.
$ echo Love Linux And OpenSource $ echo "Love Linux And OpenSource" $ echo 'Love Linux And OpenSource'

Il existe une différence significative dans le moment d'utiliser des guillemets simples et doubles. Lorsque vous utilisez des guillemets simples et qu'un mot contient un guillemet simple, il sera traité comme la fin des guillemets. Jetez un œil à l'exemple ci-dessous où is ne contient pas de guillemets simples et est traité comme la fin des guillemets.
$ echo 'Windows isn't opensource' > ^C
Dans ce cas, l'utilisation de guillemets doubles aura plus de sens.
$ echo "Windows isn't opensource" Windows isn't opensource

Exemple 3 :Impression de variables avec la commande Echo
Les valeurs stockées dans les variables peuvent être imprimées sur le terminal à l'aide de l'echo commande. Lorsque vous utilisez la variable entre guillemets simples ${VAR}
sera interprété comme du texte et ne sera pas étendu à sa valeur assignée (bienvenue ).
$ VAR="Welcome" $ echo ${VAR} to shell tips $ echo "${VAR} to shell tips" $ echo '${VAR} to shell tips'

Exemple 4 :Rediriger la sortie vers un fichier
Vous pouvez rediriger la sortie vers un fichier au lieu de l'imprimer dans un terminal en utilisant l'opérateur de redirection ( >
et >>
).
$ echo " Writing to file redirect.txt " > redirect.txt $ echo " Appending to file redirect.txt " >> redirect.txt
- Utiliser
>
l'opérateur créera un nouveau fichier s'il n'existe pas et écrira les données et si le fichier existe, il écrasera les données. - Utiliser
>>
l'opérateur créera un nouveau fichier s'il n'existe pas et ajoutera les données si le fichier existe.

Exemple 5 :Arguments pris en charge
écho La commande prend en charge trois arguments.

Par défaut lorsque vous exécutez l'écho Le caractère de nouvelle ligne de commande est automatiquement ajouté à la fin. Si vous souhaitez supprimer ce comportement, utilisez -n
drapeau.
$ echo -n "Love Linux And OpenSource"

En utilisant le -E
drapeau, l'écho traitera tous les caractères échappés par une barre oblique inverse comme du texte brut. Il n'est pas obligatoire d'utiliser -E
flag car echo par défaut ne les traitera pas comme des caractères spéciaux.
$ echo "\nLove Linux And OpenSource" $ echo -E "\nLove Linux And OpenSource"

Pour utiliser des caractères d'échappement avec antislash, vous devez utiliser -e
drapeau.
Exemple 6 :caractères d'échappement
écho La commande prend en charge les caractères d'échappement tels que nouvelle ligne, tabulation, tabulation verticale et quelques autres. Vous pouvez obtenir la liste des caractères pris en charge à partir de la commande d'aide.
$ help echo

Voyons les caractères d'échappement fréquemment utilisés en action. Notez que vous devez utiliser -e
argument pour que tous les caractères d'échappement soient efficaces.
Caractère de nouvelle ligne (\n) – Ce sera l'un des caractères d'échappement couramment utilisés. Lorsque vous utilisez \n
cela ajoutera de nouvelles lignes.
$ echo -e "\nWelcome to \nLinuxShellTips" Welcome to LinuxShellTips
Onglet horizontal(\t) – Pour créer des onglets horizontaux, utilisez \t
qui ajoute un seul onglet dans votre relevé.
$ echo -e "\tWelcome to \tLinuxShellTips" Welcome to LinuxShellTips
Onglet vertical(\v) – Pour créer des onglets verticaux, utilisez \v
.
$ echo -e "\vWelcome \vto \vLinuxShellTips" Welcome to LinuxShellTips
Retour chariot(\r) – Supprime tout ce qui précède \r
et n'imprime que ce qui est après \r
.
$ echo -e "Welcome to \r LinuxShellTips" LinuxShellTips
Supprimer d'autres sorties(\c) – Le retour chariot supprime tout ce qui précède et \c
supprimera tout ce qui vient après.
$ echo -e "Welcome to \c LinuxShellTips" Welcome to
Si vous souhaitez traiter les caractères d'échappement comme des caractères normaux, vous pouvez utiliser \\
. Disons que vous voulez \c
à traiter comme une valeur normale, utilisez \\
suivi du caractère d'échappement \c
.
echo -e "Welcome to \\\c LinuxShellTips" Welcome to \c LinuxShellTips
Voilà pour cet article. L'écho est une commande simple à utiliser et très facile à apprendre. Nous vous proposerons bientôt d'autres articles sur les scripts shell.