Comment faire pour extraire les numéros à partir d'une chaîne?

J'ai de la chaîne contient un chemin d'accès

string="toto.titi.12.tata.2.abc.def"

Je veux extraire seulement les numéros de cette chaîne.

Pour extraire le premier nombre:

tmp="${string#toto.titi.*.}"
num1="${tmp%.tata*}"

Pour extraire le deuxième nombre:

tmp="${string#toto.titi.*.tata.*.}"
num2="${tmp%.abc.def}"

Donc pour extraire un paramètre que je dois le faire en 2 étapes. Comment extraire un nombre avec une seule étape?

Cette question a été assis autour pendant un certain temps maintenant. Si aucune des réponses fournir ce que vous recherchez, alors pourriez-vous mettre à jour votre question à clarifier vos besoins un peu plus?

OriginalL'auteur MOHAMED | 2013-07-26