[sh] Extraire une ligne d'un fichier [Résolu/Fermé]

Signaler
Messages postés
1867
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
24 juillet 2014
-
 tntn -
Bonjour à tous

J'aimerais extraire une ligne d'un fichier texte.

J'ai essayé avec :
head -X fichier.txt | tail -1

Le problème est que j'aimerai qu'il me renvoie une chaine vide si la ligne n'existe pas (ici renvoie toujours la derniere ligne).

Peut-être faudrait-il se servir de awk avec \n comme délimiteur, mais comment le faire (awk -F\n ne fonctionne pas)

8 réponses

Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
5 décembre 2019
4 757
Ou on se comprend mal, ou c'est moi qui ai rien compris ;-\

Tu veux récupérer une ligne bien définie, non ?
Donc :
[jp@MDK tmpfs]$ cat ekra.txt
Ceci est la 1ère ligne
Ceci est la 2ème ligne
Ceci est la 3ème ligne

Ceci est la 5ème ligne
Ceci est la 6ème ligne
Ceci est la 7ème ligne
[jp@MDK tmpfs]$ sed -n '2p' ekra.txt
Ceci est la 2ème ligne
[jp@MDK tmpfs]$ sed -n '4p' ekra.txt

[jp@MDK tmpfs]$ sed -n '5p' ekra.txt
Ceci est la 5ème ligne
[jp@MDK tmpfs]$  
;-))
28
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 57012 internautes nous ont dit merci ce mois-ci

Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
5 décembre 2019
4 757
Salut,

Essaie avec "sed" :
sed -n 'xp' fichier
ou "x" est le numéro de la ligne recherchée...

;-))
Bonjour,
j'ai le meme probleme mais cette fois ci le numéro de ma ligne est contenu dans la variable i.
Du coup j'ai essayé plusieurs commandes mais sans succes.

i='2'
sed -n 'ip' ekra.txt
sed -n '$ip' ekra.txt
sed -n '${i}p' ekra.txt

aucune de ces commandes ne fonctionnent.
Pourriez vous m'aidez svp.
Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
5 décembre 2019
4 757
Salut,

Il faut que la variable soit en dehors des quotes pour qu'elle soit prise en compte :
sed -n $i'p' ekra.txt
;-))
Ca MARCHE
Merci enormement pour ton aide.
Messages postés
8
Date d'inscription
mercredi 22 avril 2009
Statut
Membre
Dernière intervention
25 novembre 2009
2
Merci vraimeeent jipicy tu ma aider arigatoooo ^^
Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
5 décembre 2019
4 757
De rien, c'est fait pour ;-))
Messages postés
1867
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
24 juillet 2014
327
Merci de ta contrib jipicy, seulement ceci affiche les n premières lignes :p Presque !

Je regarde le man de la commande sed, mais si tu as d'autres propositions, elles sont la bienvenue !

Merci !
Messages postés
1867
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
24 juillet 2014
327
Tu as tout a fait raison ! Et je suis désolé de t'avoir fait répété !
En fait je n'avais pas vu le prompt entre deux commendes distinctes (car lignes très treès longues) et j'avai cru que ca affichait plusieurs lignes

Merci !
merci, ça m'a bien aidé aussi