• # uniquement avec sed

    Posté par . En réponse au message retirer la premiere ligne, et l'ajouter à la fin d'un nouveau fichier. Évalué à 3.

    Sed seul suffit pour faire ce que tu demande en faisant usage du hold space:

    sed '1h;1d;$p;$g' mon_fichier.txt

    Si tu veux modifier directement le fichier, ajoute l'option -i, sinon redirige vers un autre fichier.

    Et puisque tu as posté dans le forum astuces par erreur, j'en ajoute une:
    Pour comparer directement le résultat avant après, sans devoir le mettre dans un fichier temporaire, tu peux profiter du process substitution du shell:

    diff -u mon_fichier.txt <(sed '1h;1d;$p;$g' mon_fichier.txt)

    (testé avec bash, je ne sais pas si c'est une fonctionnalité de base de shell posix ou une extension de bash)