Articles

Comment ajouter une ligne à un fichier dans bash

Parfois, nous devons travailler avec un fichier à des fins de programmation, et la nouvelle ligne nécessite d’ajouter à la fin du fichier. Cette tâche d’ajout peut être effectuée en utilisant les commandes ‘echo‘ et ‘tee’. L’utilisation de ‘>>’ avec la commande ‘echo’ ajoute une ligne à un fichier. Une autre façon consiste à utiliser les commandes ‘echo’, ‘pipe(|) et ’tee’ pour ajouter du contenu à un fichier. Comment ces commandes peuvent être utilisées dans le script bash sont présentées dans cet article.

Créez un fichier texte nommé livres.txt avec le contenu suivant pour faire les exemples montrés dans la partie suivante de cet article.

livres.txt:

Apprentissage de PHP et MySQL
Apprentissage de Laravel
Conception Web en HTML

Exemple 1: Ajoutez une ligne au fichier en utilisant la commande ‘echo’ et ‘>>> ’symbole

Dans le script suivant, un fichier existant, des livres.txt est affecté à la variable, nom de fichier, et une valeur de chaîne sera prise comme entrée de l’utilisateur à ajouter à la fin du fichier. Si la valeur d’entrée n’est pas vide, la commande ‘echo’ ajoutera la valeur dans les livres.fichier txt en utilisant le symbole ’>>’.

#!/bin/bash
# Définit le nom de fichier
nom de fichier=’livres.txt’
# Tapez le texte que vous souhaitez ajouter
read-p  » Entrez le texte que vous souhaitez ajouter : « newtext
# Vérifiez que le nouveau texte est vide ou non
si ; ensuite,
# Ajoutez le texte en utilisant le symbole ‘>>’
echonewnewtext >>enamenom de fichier
fi

Sortie:

‘Learning jQuery‘ est pris comme une nouvelle valeur de texte dans la sortie qui est ajoutée à la fin du fichier.

Exemple-2: Ajoutez une ligne au fichier en utilisant la commande ‘printf’ et ‘>> ’symbole

‘>> ’ le symbole peut être utilisé avec la commande ‘printf’ pour ajoutez du contenu formaté à un fichier. Comme dans l’exemple précédent, le nom de fichier et les valeurs de chaîne sont affectés aux variables, nom de fichier et newtext. Ensuite, la commande ‘printf’ redirigera la valeur de newtext avec un autre texte à la fin des livres.fichier txt.

#!/bin/bash
# Définit le nom de fichier
nom de fichier=’livres.txt’
# Tapez le texte que vous souhaitez ajouter
read-p » Entrez le texte que vous souhaitez ajouter: « newtext
# Vérifiez que le nouveau texte est vide ou non
if; alors
# Ajoutez le texte en utilisant ‘>> ‘symbole
printf » Le texte ajouté est: %s\n «  »newnewtext »>>enamefilename
fi

Sortie:

‘Website by WordPress’ est pris comme une nouvelle valeur de texte dans la sortie qui est ajoutée à la fin du fichier.

Exemple-3: Ajouter une ligne au fichier à l’aide de la commande `tee`

‘tee’ est une autre commande utile pour ajouter une chaîne dans un fichier. Dans le script suivant, le nom de fichier et les nouvelles valeurs de texte sont assignées comme dans les exemples précédents. Si la valeur de texte n’est pas vide, la commande ‘echo’ enverra la valeur à la commande ‘tee’ en utilisant le symbole ‘|’. l’option ‘-a’ est utilisée avec la commande ’tee’ ici pour ajouter la valeur d’entrée reçue aux livres de fichiers.txt. ‘/dev/null’ est utilisé dans le script pour empêcher l’affichage de la sortie dans le terminal.

#!/bin/bash
# Définit le nom de fichier
nom de fichier=’livres.txt’
# Tapez le texte que vous souhaitez ajouter
read-p » Entrez le texte que vous souhaitez ajouter: « newtext
# Vérifiez que le nouveau texte est vide ou non
if; alors
# Ajoutez le texte en utilisant la commande `tee`
echonewnewtext|tee-aenamefilename >/dev/null
fi

Output:

‘Learning CSS3‘ est pris comme une nouvelle valeur de texte dans la sortie qui est ajoutée à la fin du fichier.

Conclusion:

Cet article présente trois façons différentes d’ajouter du texte à la fin d’un fichier à l’aide d’un script bash.