# Comment supprimer tous les caractères non numériques d'une chaîne dans Bash {{METATOC 4-5}} #### Pour modifier un fichier Pour modifier un fichier de sorte qu'il ne contienne que les chiffres et que la partie texte soit supprimée: * avec sed: ``` $ echo $file | sed 's/[^0-9]*//g' 123 $ echo "123 he23llo" | sed 's/[^0-9]*//g' 12323 ``` * en pur bash: ``` $ echo "${file//[!0-9]/}" 123 $ file="123 hello 12345 aaa" $ echo "${file//[!0-9]/}" 12312345 ``` #### Pour enregistrer le résultat dans une variable ``` $ file=$(echo $file | sed 's/[^0-9]*//g') $ echo $file 123 $ file=${file//[!0-9]/} $ echo $file 123 ```