Rechercher : dans
Par :

[shell unix] extraire une ligne d'un fichier

Dernière réponse le 10 mai 2009 à 14:34:37 seufeureu, le 6 nov 2008 à 11:55:32 
 Signaler ce message aux modérateurs

Bonjour,

quelqu'un connait-il un moyen en shell (sh ou bash) d'extraire juste une ligne d'un fichier ?
Par exemple la première, la dernière ou la numéro n ?

Merci,

S.

Configuration: HP UX

Meilleures réponses pour « [shell unix] extraire une ligne d'un fichier » dans :
Sed - Insertion de texte VoirInsérer du texte dans un fichier Introduction Syntaxe Ajout de texte Insérer une ligne avec "i" Ajouter une ligne avec "a" Échanger une ligne avec "c" Introduction Il est parfois utile de pouvoir insérer du texte en en-tête d'un ou...
Comment lire un fichier ligne par ligne VoirComment lire un fichier ligne par ligne Préambule Boucle while Syntaxe Exemple Astuces Bonus Boucle for Syntaxe Préambule Une des erreurs les plus communes dans l'apprentissage des scripts "bash" sous GNU/LInux pour lire un fichier...
Sed - Supprimer une ou plusieurs lignes d'un fichier VoirSupprimer une (ou plusieurs) ligne(s) d'un fichier Syntaxe sed '{[/]||[/]}d' sed '{[/][,][/]d' /.../ = délimiteurs n = le numéro de ligne chaîne = la chaîne contenue dans la...
Systèmes UNIX - Le shell VoirIntroduction au shell L'interpréteur de commandes est l'interface entre l'utilisateur et le système d'exploitation, d'où son nom anglais «shell», qui signifie «coquille». Le shell est ainsi chargé de faire l'intermédiaire entre le système...
Commandes UNIX VoirTableau des principales commandes UNIX Commande Unix Description Options ls liste le contenu d'un répertoire -a Affiche tous les fichiers, y compris les fichiers cachés ...

1

jipicy, le 6 nov 2008 à 12:48:40

Salut,

sed -n '2p' fichier
affichera seulement la 2nd ligne de ton fichier
sed -n '2,8p' fichier
affichera les lignes 2 à 8

;-)) $ man woman
Il n'y a pas de page de manuel pour woman.

Répondre à jipicy

2

lami20j, le 6 nov 2008 à 13:08:53

Salut,

la 1ère

head -1 fichier.txt
la dernière
tail -1 fichier.txt
--
106485010510997108

Répondre à lami20j

3

Nikko, le 6 nov 2008 à 13:23:43

Salut,

Je pense qu'il faut que tu utilises awk

awk '{ if(NR==x) print $0)' nomdufichier


où 'x' est le numéro de ta ligne

Répondre à Nikko

4

lami20j, le 6 nov 2008 à 13:26:28

Salut,

Je pense qu'il faut que tu utilises awk
Ce n'est qu'une parmi les autres possibilités ;-)
106485010510997108

Répondre à lami20j

5

seufeureu, le 6 nov 2008 à 13:34:41

Merci à tous pour la rapidité (et la variété !) de vos réponses !!!

Bonne journée,

S.

Répondre à seufeureu

6

Nikko, le 6 nov 2008 à 13:42:29
  • +1

Certes, mais celle-ci me semble relativement simple et efficace :) Tu me diras, les autres aussi, sûrement :)

Répondre à Nikko

8

 RJ, le 10 mai 2009 à 14:34:37

En plus simple :

awk 'NR==x' nomdufichier

Répondre à RJ

7

BASSOUDILUS, le 6 nov 2008 à 14:37:19

Tu pe utiliser la redirectiion > ou >> [destination]

Répondre à BASSOUDILUS