[shell] extraction de nombre d'une chaîne

Llya -  
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,

Je cherche à extraire des nombres d'une chaîne de caractère. Je m'explique :

j'ai une chaîne comme ceci dans une variable var:

< mot-12345 blablablabla
< mot-154 blablablablabla blablabla blablabla
<mot-6543 blabla


Je voudrais récupérer les nombres qui suivent mot-

j'ai essayé avec une solution en sed mais je suis pas douée et ça a rirn donné ><' .
Ma solution echo $var | sed -n "s/.*mot-\([^]*\).*/\1/p"

Est-ce que quelqu'un a une idée ?

Merci pour votre aide !
A voir également:

3 réponses

jipicy Messages postés 41342 Statut Modérateur 4 896
 
Re-

Si c'est les seuls nombres de la chaine :

 egrep -o '[[:digit:]]*'

devrait suffire ;-))
3
Llya
 
En fait j'ai réussi :

tmp=$(echo "$var"|cut -d"-" -f2)
nombres=$(echo "$tmp"|cut -d" " -f1)
0
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
echo $var | tr "-" " "|cut -f 2
ou :
echo $var | cut -d "-" -f 2 |cut -f 1
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
Salut,

sed -n "s/.*mot-\([^ ]*\) .*/\1/p" 

;-))
0