Bash : Extraire une partie d'un fichier
Résolu/Fermé
Ka-El
Messages postés
260
Date d'inscription
lundi 28 novembre 2011
Statut
Membre
Dernière intervention
7 août 2020
-
10 juin 2013 à 10:50
Ka-El Messages postés 260 Date d'inscription lundi 28 novembre 2011 Statut Membre Dernière intervention 7 août 2020 - 10 juin 2013 à 12:04
Ka-El Messages postés 260 Date d'inscription lundi 28 novembre 2011 Statut Membre Dernière intervention 7 août 2020 - 10 juin 2013 à 12:04
Bonjour,
Je suis confronté au problème suivant :
Dans le nom suivant :
x_ident_lot='BERNARD'
Je souhaite récupérer la partie "BERNARD".
Le problème c'est que cette partie peut changer et prendre différents nom avec un nombre de caractères différents.
Auriez-vous svp une commande qui me permettrait de faire ça ?
En vous remerciant par avance.
K
Je suis confronté au problème suivant :
Dans le nom suivant :
x_ident_lot='BERNARD'
Je souhaite récupérer la partie "BERNARD".
Le problème c'est que cette partie peut changer et prendre différents nom avec un nombre de caractères différents.
Auriez-vous svp une commande qui me permettrait de faire ça ?
En vous remerciant par avance.
K
A voir également:
- Bash : Extraire une partie d'un fichier
- Bingo bash free - Télécharger - Divers Jeux
- Bash permission non accordée - Forum Shell
- Bash pause ✓ - Forum Shell
- Bash addition ✓ - Forum Shell
- Additionner des variables string shell,bash - Forum Programmation
2 réponses
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 425
10 juin 2013 à 11:09
10 juin 2013 à 11:09
Salut,
$ echo "${B}" x_ident_lot='BERNARD' $ echo "${B}" | grep -o -P "x_ident_lot='\K[^']*(?=')" BERNARD $ echo "${B}" | sed -n "s/x_ident_lot='\([^']*\)'/\1/p" BERNARD $ echo "${B}" | awk -F"'" '$1 ~ /x_ident_lot=/ { print $2 }' BERNARD
Ka-El
Messages postés
260
Date d'inscription
lundi 28 novembre 2011
Statut
Membre
Dernière intervention
7 août 2020
10 juin 2013 à 11:27
10 juin 2013 à 11:27
Parfait merci beaucoup !
Entre temps J'ai trouvé ça aussi :
echo "${B}" | grep x_ident_lot | awk -F'=' '{print $2}' | cut -d"'" -f2
Merci encore.
Entre temps J'ai trouvé ça aussi :
echo "${B}" | grep x_ident_lot | awk -F'=' '{print $2}' | cut -d"'" -f2
Merci encore.
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 425
10 juin 2013 à 11:29
10 juin 2013 à 11:29
grep x_ident_lot | awk -F'=' '{print $2}' | cut -d"'" -f2
Ça fait beaucoup de processus pour rien ;-(
Ça fait beaucoup de processus pour rien ;-(
Ka-El
Messages postés
260
Date d'inscription
lundi 28 novembre 2011
Statut
Membre
Dernière intervention
7 août 2020
10 juin 2013 à 12:04
10 juin 2013 à 12:04
C'est vrai, j'ai finalement fait le choix de ta troisième proposition.
Merci !
Merci !