Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > Unix > AIX
AIX Forum d'entraide sur le système AIX. Avant de poster -> FAQ AIX et cours AIX
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 23/09/2009, 19h41   #1
Invité de passage
 
Inscription : avril 2008
Messages : 10
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 10
Points : 0
Points : 0
Par défaut Test nombre hexadecimal

Bonjour,

Je souhaite faire un test en korn shell , pour savoir si un nombre est bien de type hexadecimal sur 2 digits ( a0, c6, ..)

Merci,
francis_tom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/09/2009, 21h14   #2
Modérateur
 
Avatar de al1_24
 
Homme Alain
Ingénieur développement décisionnel
Inscription : mai 2002
Messages : 4 299
Détails du profil
Informations personnelles :
Nom : Homme Alain
Âge : 51
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur développement décisionnel
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 4 299
Points : 6 902
Points : 6 902
Il suffit d'une expression régulière...
Code :
[[ %{mavar} == [0-9a-fA-F]{2} ]] && echo %{mavar} est valide || echo %{mavar} est invalide
__________________
Modérateur Langage SQL
Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
N'oubliez pas le bouton et pensez aux balises [code]
Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle
al1_24 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/09/2009, 21h49   #3
Invité de passage
 
Inscription : avril 2008
Messages : 10
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 10
Points : 0
Points : 0
Par défaut test

merci de ton retour, mais si je fais un test , j'ai un souci

LS=AA
$:[[ %{$LS} == [0-9a-fA-F]{2} ]] && echo %{$LS} est valide || echo %{$LS} est invalide
$:%{AA} est invalide
francis_tom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/09/2009, 22h08   #4
Membre chevronné
 
Inscription : septembre 2007
Messages : 685
Détails du profil
Informations personnelles :
Âge : 48
Localisation : Suisse

Informations forums :
Inscription : septembre 2007
Messages : 685
Points : 723
Points : 723
Bonsoir,

Ne faudrait-il pas changer les '%' en '$' ?
__________________
Un problème bien posé est déjà résolu (H. Bergson).
jmelyn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/09/2009, 22h16   #5
Invité de passage
 
Inscription : avril 2008
Messages : 10
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 10
Points : 0
Points : 0
LS=0A
> [[ ${LS} == [0-9a-fA-F]{2} ]] && echo ${LS} est valide || echo ${LS} est invalide
>0A est invalide

meme pb
francis_tom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2009, 04h36   #6
Expert Confirmé
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 1 896
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 1 896
Points : 3 676
Points : 3 676
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
for val in 1234 a9 0b 4AF980 23xy9 abcdef F9 ffffff aaaaaa 0 -982f ff aa -1 34 -34 a!b!c! 9F
 do
   [[ $val == {2}([0-9a-fA-F]) ]] && echo "$val est valide" || echo "$val est invalide"
done
1234 est invalide
a9 est valide
0b est valide
4AF980 est invalide
23xy9 est invalide
abcdef est invalide
F9 est valide
ffffff est invalide
aaaaaa est invalide
0 est invalide
-982f est invalide
ff est valide
aa est valide
-1 est invalide
34 est valide
-34 est invalide
a!b!c! est invalide
9F est valide
...
?

Dernière modification par N_BaH ; 24/09/2009 à 05h17.
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2009, 08h39   #7
Invité de passage
 
Inscription : avril 2008
Messages : 10
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 10
Points : 0
Points : 0
bonjour,

quand je lance sur un korn shell, j'ai cette erreur

[[ $val == {2}([0-9a-fA-F]) ]] && echo "$val est valide" || echo "$val est invalide"
ksh: syntax error: `(' unexpected
francis_tom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2009, 08h55   #8
Expert Confirmé
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 1 896
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 1 896
Points : 3 676
Points : 3 676
J'ai testé, avec ce résultat, sur Debian GNU/Linux Lenny
Code :
1
2
ksh --version
  version         sh (AT&T Research) 93s+ 2008-01-31
...
?
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2009, 08h58   #9
Invité de passage
 
Inscription : avril 2008
Messages : 10
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 10
Points : 0
Points : 0
je suis sur un aix ,
francis_tom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2009, 16h46   #10
Modérateur
 
Avatar de al1_24
 
Homme Alain
Ingénieur développement décisionnel
Inscription : mai 2002
Messages : 4 299
Détails du profil
Informations personnelles :
Nom : Homme Alain
Âge : 51
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur développement décisionnel
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 4 299
Points : 6 902
Points : 6 902
Citation:
Envoyé par jmelyn Voir le message
Bonsoir,

Ne faudrait-il pas changer les '%' en '$' ?
Où avais je la tête ?
__________________
Modérateur Langage SQL
Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
N'oubliez pas le bouton et pensez aux balises [code]
Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle
al1_24 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/10/2009, 11h34   #11
Nouveau Membre du Club
 
Avatar de Escandil
 
Inscription : mai 2003
Messages : 60
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France, Côte d'Or (Bourgogne)

Informations forums :
Inscription : mai 2003
Messages : 60
Points : 29
Points : 29
Envoyer un message via MSN à Escandil
Bonjour

Je vous propose le code suivant :

Code :
1
2
3
4
5
  
case $val in
   [0-9a-fA-F][0-9a-fA-F] ) echo "$val est valide" ;;
   * ) echo "$val est invalide" ;;
esac

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
for val in 1234 a9 0b 4AF980 23xy9 abcdef F9 ffffff aaaaaa 0 -982f ff aa -1 34 -34 a!b!c! 9F
 do
  case $val in
  [0-9a-fA-F][0-9a-fA-F] ) echo "$val est valide" ;;
  * ) echo "$val est invalide" ;;
  esac
done


1234 est invalide
a9 est valide
0b est valide
4AF980 est invalide
23xy9 est invalide
abcdef est invalide
F9 est valide
ffffff est invalide
aaaaaa est invalide
0 est invalide
-982f est invalide
ff est valide
aa est valide
-1 est invalide
34 est valide
-34 est invalide
a!b!c! est invalide
9F est valide
Escandil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 19h04.


 
 
 
 
Partenaires

Hébergement Web