Extraire le dernier nombre
Bonjour,
je souhaite extraire la dernière valeur numérique des lignes répondant à un pattern.
J'utilise cette commande :
Code:
numero_plugin=$(grep "genmon" /home/administrateur/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml | sed 's/[^[:digit:]]//g' | awk '{print $NF}')
mais obtient l'ensemble des valeurs numériques et non la dernière :
Code:
1 2
| $echo "$numero_plugin"
5 7 8 9 |
comme si la commande se réduisait à :
Code:
numero_plugin=$(grep "genmon" /home/administrateur/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml | sed 's/[^[:digit:]]//g')
Si je force le caractère 'espace' comme séparateur
Code:
awk 'BEGIN { FS = " " } {print $NF}'
cela ne change rien.
Or, si je fais
Code:
1 2
| test="5 7 8 9"
echo $test | awk '{print $NF} |
j'obtiens bien la dernière valeur numérique, i.e. 9.
Tout se passe comme si les valeurs 5 7 8 9 contenues dans $numero_plugin n'étaient pas séparées par des espaces.
Ou alors ce sont bien des espaces, mais awk ne fonctionne pas dans ce contexte.
Qu'est-ce qui m'échappe ?