Extraire une chaîne
Résolu/Fermé
A voir également:
- Extraire une chaîne
- Extraire une video youtube - Guide
- Chaine tnt gratuite sur mobile - Guide
- Extraire son d'une video - Guide
- Nouvelle chaîne tnt gratuite 2024 - Accueil - TV & Vidéo
- Extraire image pdf - Guide
3 réponses
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
23 avril 2008 à 12:02
23 avril 2008 à 12:02
Salut,
egrep '^(Last|First)_(line|pixel) ' master.out | egrep -o '[0-9]{2,}';-))
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
>
mecool23
23 avril 2008 à 18:51
23 avril 2008 à 18:51
Bon déjà dans le fichier fourni sur cjoint, il n'y a aucune valeur "26308".
Ensuite, même si elle y était, comme il existe plusieurs lignes commençant par "Last_line" il faut savoir dans quelle partie, du moins entre quelle et quelle partie extraire cette fameuse ligne...
Sinon, la syntaxe donnée correspond à :
Ensuite, même si elle y était, comme il existe plusieurs lignes commençant par "Last_line" il faut savoir dans quelle partie, du moins entre quelle et quelle partie extraire cette fameuse ligne...
Sinon, la syntaxe donnée correspond à :
egrep Ou "grep -E" pour utiliser la syntaxe des expressions étendues '^(Last|First)_(line|pixel) ' On recherche toutes chaines commençant par Last OU First suivi d'un underscore et suivi par line OU pixel | Puis on filtre ce résultat egrep -o '[0-9]{2,}' En recherchant qu'une chaine exclusivement numérique et composée d'au moins 2 chiffres ou plus;-))
mecool23
>
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
24 avril 2008 à 10:00
24 avril 2008 à 10:00
bonjour,
merci bcp pour l'explication, pour les valeurs vous avez raison je me suis trompé, c est 26445 au lieu de 26308.
votre commande va me donner juste une chaine, non?? car moi je veux extraire les deux chaines 26445 et 4900, et les remplacer respectivement dans ma ligne de commande <plotoffsets interferogram.out 1 "$X" 1 "$Y" 0.11 master.afiltered>avec ($X =26445, et $Y=4900)
merci d avance
CYG
merci bcp pour l'explication, pour les valeurs vous avez raison je me suis trompé, c est 26445 au lieu de 26308.
votre commande va me donner juste une chaine, non?? car moi je veux extraire les deux chaines 26445 et 4900, et les remplacer respectivement dans ma ligne de commande <plotoffsets interferogram.out 1 "$X" 1 "$Y" 0.11 master.afiltered>avec ($X =26445, et $Y=4900)
merci d avance
CYG
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
24 avril 2008 à 10:10
24 avril 2008 à 10:10
Ok, par contre tu m'as toujours pas dit sur quel(s) critère(s) déterminer les lignes voulues. En suivant ta demande je suppose que c'est les 2 premières rencontrées, exact ?
De ce fait, essayes avec ça :
De ce fait, essayes avec ça :
[tmpfs]$ X=$(egrep -m 1 '^Last_line ' master.out | egrep -o '[0-9]{2,}') [tmpfs]$ Y=$(egrep -m 1 '^Last_pixel ' master.out | egrep -o '[0-9]{2,}') [tmpfs]$ echo -e "X=$X\nY=$Y" X=26445 Y=4900 [tmpfs]$;-))
23 avril 2008 à 10:28