Recherche de site Web

Comment insérer une ligne au début d’un fichier sous Linux


Sous Linux, la modification de fichiers à partir de la ligne de commande est une tâche courante. Qu’il s’agisse de préfixer des paramètres de configuration, d’ajouter des en-têtes à des fichiers texte ou d’effectuer des modifications en masse, il peut être très utile de savoir comment insérer une ligne au début d’un fichier. Cet article explore plusieurs méthodes pour y parvenir efficacement.

Dans ce tutoriel, vous allez apprendre :

  • Comment utiliser la commande sed pour insérer une ligne au début d’un fichier
  • Comment utiliser la commande ed pour l’édition de fichiers
  • Comment utiliser le script shell pour ajouter une ligne à un fichier
  • Comment utiliser la commande awk à cette fin

Méthodes pour insérer une ligne au début d’un fichier

La modification du début d’un fichier nécessite des stratégies différentes par rapport à l’édition d’autres parties. Les méthodes suivantes décrivent comment insérer une ligne au début à l’aide de divers outils disponibles sous Linux.

  1. Utilisation de la commande sed : La commande sed (éditeur de flux) est un utilitaire puissant pour l’analyse et la transformation de texte.

    sed -i '1i This is the new first line' file.txt

    L’option -i modifie le fichier en place. La commande 1i indique à sed d’insérer le texte à la ligne 1. Remplacer Il s’agit de la nouvelle première ligne avec le texte que vous souhaitez insérer, et le nom du fichier par le nom de votre fichier.

  2. Utilisation de la commande ed : La commande ed est un éditeur de texte orienté ligne. C’est utile pour effectuer des modifications scriptées.

    ed -s file.txt << EOF
    0a
    This is the new first line
    .
    w
    q
    EOF

    Ici, 0a insère le texte au début. La commande w écrit les modifications apportées au fichier et q quitte l’éditeur. Remplacer Il s’agit de la nouvelle première ligne avec le texte de votre choix.

  3. Utilisation de Shell Scripting : un simple script shell peut être utilisé pour ajouter une ligne à un fichier.

    { echo 'This is the new first line'; cat file.txt; } > temp && mv temp file.txt

    Cette commande utilise un sous-shell pour faire écho à la nouvelle ligne et concaténer le contenu du fichier d’origine. Le résultat est redirigé vers un fichier temporaire, qui remplace ensuite le fichier d’origine.

  4. Utilisation de la commande awk : La commande awk est un outil de traitement de texte polyvalent.

    awk 'BEGIN { print "This is the new first line" } { print }' file.txt > temp && mv temp file.txt

    Le bloc BEGIN s’exécute avant de traiter le fichier, imprimant ainsi la nouvelle ligne en premier. Le reste du fichier est imprimé comme d’habitude. La sortie est ensuite enregistrée dans un fichier temporaire et replacée dans le fichier d’origine.

Conclusion

L’insertion d’une ligne au début d’un fichier sous Linux peut être réalisée à l’aide de différents outils, chacun adapté à différents scénarios. Que vous préfériez sed, ed, shell scripting ou awk, la maîtrise de ces techniques améliore votre capacité à manipuler efficacement les fichiers texte sur un système Linux.

Articles connexes: