|
|
|
|
||||||
| fr.comp.os.unix Système UNIX. |
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#9 |
|
Messages: n/a
Hébergeur: |
En fait je veux bien une explication sur la premiere partie afin de
comprendre mieux: *[!0-9.] | *..* | *.*.*.*.* | .* | *. | *25[6-9]* | \ *2[6-9][!.]* | *[3-9][!.][!.]* | *[1-9][!.][!.][!.]*) echo not decimal quad IP address;; merci de ton retour Gérald |
|
|
|
#10 |
|
Messages: n/a
Hébergeur: |
En fait je veux bien une explication sur la premiere partie afin de
comprendre mieux: *[!0-9.] | *..* | *.*.*.*.* | .* | *. | *25[6-9]* | \ *2[6-9][!.]* | *[3-9][!.][!.]* | *[1-9][!.][!.][!.]*) echo not decimal quad IP address;; merci de ton retour Gérald |
|
|
|
#11 |
|
Messages: n/a
Hébergeur: |
2006-05-11, 00:46(-07), dorisnemo:
> En fait je veux bien une explication sur la premiere partie afin de > comprendre mieux: > *[!0-9.] | *..* | *.*.*.*.* | .* | *. | *25[6-9]* | \ ^ manque un * > *2[6-9][!.]* | *[3-9][!.][!.]* | *[1-9][!.][!.][!.]*) > echo not decimal quad IP address;; > merci de ton retour [...] Le patterns des shells ne sont pas des regexp, et sont plus limités. Souvent, c'est plus facile de decrire ce qui ne matche pas que ce qui matche. Ce qui ne matche pas un <0-255>.<0-255>.<0-255>.<0-255>, c'est soit quelquechose qui contient un charactere autre que 0-9 ou . Une fois qu'on a eliminé ceux la, il ne reste guere a eliminer que ce qui contient ".." ou commence ou se termine par "." ou contiennent plus de 3 "." puis les nombres qui ne sont pas compris entre 0 et 255, donc les <256-259>, les <2[6-9]x> les <[3-9]xx> pour les nombres a trois chiffres et tous les nombres a plus de trois chiffres. La ligne d'apres est importante car avec: *.*.*.*) on exclue ce qui a moins de 3 ".", ce que ce recupere les *) a la ligne suivante. Si on avait du decrire tout ce qui matche, on n'en aurait pas finit: [0-9].[0-9].[0-9].[0-9] | \ [0-9].[0-9].[0-9].[0-9][0-9] | \ [0-9].[0-9].[0-9][0-9].[0-9] | \ [0-9].[0-9][0-9].[0-9].[0-9] | \ [0-9].[0-9].[0-9].[0-9] | \ [0-9].[0-9].[0-9][0-9].[0-9][0-9] | \ [0-9][0-9].[0-9].[0-9][0-9].[0-9] | \ [0-9].[0-9][0-9].[0-9][0-9].[0-9] | \ [0-9][0-9].[0-9].[0-9].[0-9][0-9] | \ .... Sans compter qu'on ne pourrait pas decrire 0000001.2.3.4 -- Stéphane |
|
|
|
#12 |
|
Messages: n/a
Hébergeur: |
"dorisnemo" <gberengue@unedic.fr> écrit :
> En fait je veux bien une explication sur la premiere partie afin de > comprendre mieux: La première partie sert à déterminer les cas d'erreurs. Par exemple, un truc sous la forme 712.123.123.123 n'est pas une adresse IP mais aurait été matché positivement par la seconde partie. > *[!0-9.] Si le machin contient autre chose que des nombres et des points > *..* Si ça contient deux points consécutifs > *.*.*.*.* Si ça contient 5 points (ou plus) > .* Si ça commence par un point > *. Si ça finit par un point > *25[6-9]* Si ça contient une valeur comprise entre 256 et 259. > *2[6-9][!.]* Si ça contient une valeur entre 260 et 299. > *[3-9][!.][!.]* Si ça contient une valeur entre 300 et 999. > *[1-9][!.][!.][!.]*) Si ça contient une valeur entre 1000 et 9999 (ou plus). > echo not decimal quad IP address;; Alors ce ne sont pas des adresses IP correctement formées. > merci de ton retour HTH. -- CJ> Les censeurs agitent plus de vent que les moulins des Pays Bas. Tiens, je savais pas que c'étaient les moulins qui créaient le vent. -+- GR in GNU : Dame qui se shoote et sang chaud pensa -+- |
|
![]() |
| Outils de la discussion | |
|
|