Bash - récupérer ligne d'un fichier

Résolu/Fermé
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010 - 18 août 2010 à 15:19
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 14 janv. 2013 à 14:23
Bonjour,
Je ne voie pas comment faire pour récupérer la ligne d'un fichier où il y a un mot donné en paramètre.
ex :
fichier.txt :
toto ne vas pas à l'école, bah c'est toto.
titi va à l'école car il est sérieux.

ex Bash : récupLigneOuIlYALeMot "toto" fichier.txt
> toto ne vas pas à l'école, bah c'est toto.

A voir également:

7 réponses

Bonjour,

Essaye "grep toto fichier.txt" ;
Et pour avoir plus d'infos sur cette commande "man grep"

Cordialement, M
0
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010
18 août 2010 à 15:38
J'ai essayé cette commande mais elle ne me retourne rien.
Et j'ai déjà regardé le man de grep
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
18 août 2010 à 15:42
Re,

Pas de guillemets
grep toto fichier.txt 
0
Oui mais grep ca retourne le nom du fichier et non pas la phrase dans laquelle se trouve le texte...
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
14 janv. 2013 à 14:23
Ben non ! Ça retourne bien la ligne : voir ici
0
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010
18 août 2010 à 15:46
Ok mais ça m'indique juste qu'il l'a trouvé dans le fichier.
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
18 août 2010 à 15:51
Re,

Affiche ce que tu tapes et ce que tu vois sur l'écran.
On n'est pas devant ton pc et on ne peux pas deviner.

La commande est correcte, donc soit on n'a pas compris ce que tu veux soit tu n'as pas bien expliquer ce que tu veux.
0
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010
18 août 2010 à 16:02
Ba j'ai mis un exemple, je veux que ça me retourne :
toto ne vas pas à l'école, bah c'est toto.
La ligne, et non que le mot a été trouvé.
Et enfaite si je fait
grep toto fichier.txt > test.txt
j'ai rien dans test.txt
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
18 août 2010 à 16:07
Re,

Affiche ici le contenu de ton fichier
Donc tape la commande et affiche ici exactement ce que tu vois à l'écran
cat fichier.txt
0
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010
18 août 2010 à 16:11
Je pense que ça ne fonctionne pas car fichier.txt est dans un dossier et lorsque j'essaie avec :
grep -d dossier1/dossier2 -f fichier.txt toto

Il ne trouve pas le dossier
grep: unknown directories method
0
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010
Modifié par remail49 le 18/08/2010 à 16:20
J'ai beau me placer dans le dossier où se trouve fichier.txt et mettre
grep toto fichier.txt

Dans le terminal, j'ai rien en retour. Je ne comprend pas.
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
18 août 2010 à 16:38
Salut,

[jp@MDK-2010 tmpfs]$ cat plop
toto ne vas pas à l'école, bah c'est toto.
titi va à l'école car il est sérieux.

[jp@MDK-2010 tmpfs]$ grep toto plop
toto ne vas pas à l'école, bah c'est toto.

[jp@MDK-2010 tmpfs]$ sed -n '/toto/p' plop
toto ne vas pas à l'école, bah c'est toto.

[jp@MDK-2010 tmpfs]$ awk '/toto/ { print $0 }' plop
toto ne vas pas à l'école, bah c'est toto.

[jp@MDK-2010 tmpfs]$

:-)
0
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010
Modifié par remail49 le 18/08/2010 à 17:06
J'ai essayé ce que tu proposes et pareil que pour le grep, je n'ai rien
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
18 août 2010 à 17:08
Affiche-nous le contenu de ton fichier avec :

cat -A fichier
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
18 août 2010 à 16:41
Re,

Non mais j'ai mis des exemples, je suis développeur, je fais au plus simple pour que l'on me comprenne
Ben, je n'ai rien compris dans le mode simple

Fait dans le mode normal et on se debrouillera mieux.

Lorsque je suis dans le bon dossier et que je tape :

grep "toto" fichier.txt
ou

grep toto fichier.txt
ou

cat fichier.txt | grep "toto"
Le terminal n'affiche rien


C'est puisque toto n'existe pas soit il est en majuscules.

grep -i toto fichier.txt

0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
18 août 2010 à 16:50
Re,

Je vais essayé de voir ce que je peut faire maintenant avec ce problème d'encodage

Ben, fait un
file ton_fichier 
pour voir de quoi il s'agit
0
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010
18 août 2010 à 17:04
Mon fichier est un : Little-endian UTF-16 Unicode c program text
0
remail49 Messages postés 36 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 20 août 2010
18 août 2010 à 17:14
Bon j'ai trouvé merci pour vos réponse :
iconv -f UTF-16 -t UTF-8 fichier.txt | grep toto
0