Cat EOF dans Bash
- Cat EOF dans Bash
- Mettre une chaîne multiligne dans un fichier dans Bash
- Passer une chaîne multiligne au tuyau dans Bash
 
Ce tutoriel explique ce qu’est cat EOF et son utilisation dans bash.
Cat EOF dans Bash
cat est une commande bash utilisée pour lire, afficher ou concaténer le contenu d’un fichier, tandis que EOF signifie End Of File. Le EOF indique au shell que le fichier en cours de lecture est terminé. cat << eof utilise here-document. Les opérateurs de redirection << et <<- permettent tous deux la redirection des lignes suivantes lues par le shell vers l’entrée d’une commande. Les lignes redirigées sont appelées here-document.
Le here-document utilise le format suivant.
[n] << word
     here-document
delimeter
Le here-document est traité comme un seul mot qui commence après la nouvelle ligne suivante. Il continue jusqu’à ce qu’il y ait une ligne contenant uniquement le délimiteur ou une nouvelle ligne sans caractères blancs entre les deux.
Mettre une chaîne multiligne dans un fichier dans Bash
cat, <<, EOF et > fournissent un moyen interactif d’entrer une chaîne multiligne dans un fichier. Le EOF est connu sous le nom de Here Tag. Le Here Tag indique au shell que vous allez saisir une chaîne multiligne jusqu’au Here Tag. Le << est utilisé pour définir le Here Tag. Le > est utilisé pour rediriger le contenu d’entrée vers un fichier spécifié, multiline.txt dans notre cas.
cat << EOF > multiline.txt
> This is the first line
> This is the second line
> This is the third line
> EOF
Nous pouvons également utiliser cat, <<, EOF et > pour écrire des scripts bash comme indiqué ci-dessous de manière interactive.
cat << EOF > script.sh
#!/bin/bash
printf "Hello\n"
printf "Wordl!\n"
EOF
Passer une chaîne multiligne au tuyau dans Bash
Le code ci-dessous utilise cat, eof et pipe pour rediriger le contenu de la chaîne d’entrée multiligne vers un tube et une commande spécifiés. L’entrée est redirigée vers la commande grep qui grep pour la chaîne A et l’entrée correspondante est redirigée vers la commande tee. La commande tee copie l’entrée dans le fichier fruits.txt.
cat <<EOF | grep 'A' | tee fruits.txt
> Apple
> Orange
> Apricot
> Banana
> EOF
Vérifions le contenu du fichier fruits.txt avec cat.
cat fruits.txt
Production :
Apple
Apricot
