Recherche d'une ligne avec espace
Résolu
Guizmo
-
Guizmo -
Guizmo -
Bonjour à tous,
Je débute avec la programmation en shell et je suis un petit peu dépassé. J'ai un fichier texte dans lequel j'aimerais retrouver une ligne qui contient une suite de nombre.
"17 1 0 2 1"
Malheureusement les espaces me posent beaucoup de problèmes et je n'ai pas de succès avec la commande grep. Si quelqu'un à une solution je suis preneur.
Je vous remercie d'avance
Je débute avec la programmation en shell et je suis un petit peu dépassé. J'ai un fichier texte dans lequel j'aimerais retrouver une ligne qui contient une suite de nombre.
"17 1 0 2 1"
Malheureusement les espaces me posent beaucoup de problèmes et je n'ai pas de succès avec la commande grep. Si quelqu'un à une solution je suis preneur.
Je vous remercie d'avance
1 réponse
-
salut,
qu'as-tu essayé ?
quelle est erreur retournée ?
donne un échantillon représentatif du fichier, mets en évidence les lignes qui devraient correspondre,...-
Salut,
j'ai essayé du grep -w 17*****1*****0 montext.txt mais sans succès.
Il n y a pas d'erreur mais je n'arrive pas à retrouver ma ligne et uniquement cette ligne.
le fichier en un peu plus long donne ça :
4 2 0 1 3 3 0 5 0
0.00000000e+00 2.00000009e-03 0.00000000e+00 0.00000000e+00 0.00000000e+00
17 1 0 2 1 1 0 0 0
1 11000000
5.52925659e+02 0.00000000e+00
17 2 0 2 1 1 0 0 0
1 11000000
5.51666077e+02 0.00000000e+00 -
ce n'est pas le fait que la ligne contient des espaces qui pose problème, c'est que ta regex ne veut pas dire ce que tu crois.
d'ailleurs, quel est le motif recherché (pas la ligne. le motif !) ?
que contient la ligne qui te permet de la sélectionner ? quelle partie est, ou n'est pas, significative ?
en attendant, un petit tour dans leman 7 regex
, zou. ;) -
Je voudrais récupérer le numéro de cette ligne pour le mettre dans une variable. Le contenu de la ligne n'a pas d'importance mais je ne peux pas la chercher à cause des espaces entre les nombres.
Si j'effectue un "grep 17 1" il va chercher uniquement toutes les lignes avec un 17 et pas cette ligne là. -
Salut,
Si j'effectue un "grep 17 1" il va chercher uniquement toutes les lignes avec un 17 et pas cette ligne là.
Ah bon ?$ cat plop
4 2 0 1 3 3 0 5 0
0.00000000e+00 2.00000009e-03 0.00000000e+00 0.00000000e+00 0.00000000e+00
17 1 0 2 1 1 0 0 0
1 11000000
5.52925659e+02 0.00000000e+00
17 2 0 2 1 1 0 0 0
1 11000000
5.51666077e+02 0.00000000e+00
$ grep -n '^17 1' plop
3:17 1 0 2 1 1 0 0 0 -
-