Sed -e 1\p -e d titre.txt

Bonjour,

je suis en train de travailler sur un script C-shell écrit par quelqu'un d'autre. J'ai beaucoup cherché et je ne comprend vraiment pas ce que fait l'insturction suivante :

set titre = `sed -e 1\p -e d titre.txt`

le fichier titre.txt contient simplement une chaîne de caractère qui est le titre d'un essai, suivi d'un passage à la ligne normalement.

Si quelqu'un pouvait m'aider, ça me dépannerait beaucoup.

Merci

Mickaël

2 réponses

  1. merci beaucoup pour ton aide

    Mickaël
    0
    1. Modérateur
      De rien ;-))
      0
  2. Modérateur
    Salut,

    Ton instruction extrait la première ligne (-e 1/p) et efface la fin de la ligne (-e d).
    On aurait tout aussi bien pu écrire :
    sed -n 1p titre.txt
    ;-))
    Comme un exemple est toujours plus parlant :
    [jp@Mandrake tmpfs]$ cat titre.txt
    Ceci est un titre
    Là un autre
    et là un troisième
    
    [jp@Mandrake tmpfs]$ sed -e 1\p -e d titre.txt
    Ceci est un titre
    
    [jp@Mandrake tmpfs]$ sed -n 1p titre.txt
    Ceci est un titre
    
    [jp@Mandrake tmpfs]$ sed -e 2\p -e d titre.txt
    Là un autre
    
    [jp@Mandrake tmpfs]$ sed -n 2p titre.txt
    Là un autre
    
    [jp@Mandrake tmpfs]$ sed -e 3\p -e d titre.txt
    et là un troisième
    
    [jp@Mandrake tmpfs]$ sed -n 3p titre.txt
    et là un troisième
    
    [jp@Mandrake tmpfs]$
    Enjoy ;-))
    0