[Shell-script] Caractère génant

Résolu/Fermé
Phil - 16 avril 2007 à 12:00
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 17 avril 2007 à 01:36
Salut tout le monde,

Voilà j'ai un petit problème dans un script en Bash. J'ai un fichier composé d'une suite de chiffre et je veux en extraire la valeur minimun, j'utilise donc la commande 'sort' puis un 'head -1' pour avoir la plus petite valeur.
Le problème est que, dans le fichier, il y a parfois une lettre à la place d'un chiffre ( problème indépendant de ma volonté, hahaha) donc quand je fais le "sort" la lettre se retrouve en début de fichier est, du coup, le head -1 me la renvoie....
une petite idée pour supprimer les lettres de mon fichier ?

Merçi d'avance les gars.

PS : Ce forum est excellent, merçi pour tout.
A voir également:

3 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
16 avril 2007 à 12:19
Salut,
sed 's/[a-zA-Z]//g'
Exemple :
[jp@MDK tmpfs]$ echo "123abc456" | sed 's/[a-zA-Z]//g'
123456
[jp@MDK tmpfs]$
Sinon, affiches-nous un bout de ton fichier ;-))
0
Ben ecoute cette solution marche parfaitement sur mes fichiers donc le problème est résolu. je te remerçie encore pour la rapidité de ta réponse.
C'est vraiment impressionnant...je bloque sur ce petit détail de rien du tout depuis ce matin et toi tu me sort la réponse en moins d'une heure. Ca me fait penser que j'ai encore beaucoup de boulot avant de connaître toutes les ficelles de linux...enfin bref, merçi beaucoup :)
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
17 avril 2007 à 01:36
Au cas ou, il y a aussi la solution avec "tr" (man tr, pour plus d'info) :
echo "123abc456" | tr -d '[:alpha:]'
;-))
0