IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

vérification de l'entrée d'une adresse ip


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut vérification de l'entrée d'une adresse ip
    Bonjour tout le monde

    Je cherche à faire une fonction bash qui me permettrait de vérifier que l'adresse ip demandée par le script est correctement libellée.
    j'ai par exemple une variable addip que je rentre avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    read -p "entrez l'adresse ip : " addip
    que j'ajoute dans un fichier ensuite comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "$addip">>./fichier.txt
    bon
    ce que je voudrais faire c'est un test avant le echo "vairable">>fichier afin de permettre l'entrée d'une valeur correcte en cas de plantage
    donc j'ai pensé utiliser des expressions régulières comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [0-9]\{3\}.\{1\}[0-9]\{3\}.\{1\}[0-9]\{1,2,3\}.\{1\}[0-9]\{1,2,3\}
    pour une chaine du genre
    www.xxx.xxx.xxx où les deux derniers champs n'ont pas forcément 3 chiffres
    bon ça ne marche pas
    en plus en testant avec grep
    le ne passe pas
    si quelqu'un a une idée
    merci
    paul
    en plus
    Dernière modification par ggnore ; 18/02/2008 à 22h39.

  2. #2
    Membre chevronné
    Avatar de Schmorgluck
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2006
    Messages : 371
    Par défaut
    Essaie [0-9]\{1,3\} plutôt, ça devrait tout de suite aller mieux. Et au passage, vire tous tes \{1\}, ils ne servent à rien.
    Au passage, ce serait une bonne idée d'échapper tes points. Bon, ici ça ne change rien au résultat, mais c'est une bonne habitude à prendre pour des points littéraux en général.

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "192.168.1.1" |  egrep  '^[0-9]{1,3}(\.[0-9]{1,3}){3}$'
    Mais il validera 192.168.1.999 !

    Si tu veux une version conforme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '225.129.2.66' |  egrep  '^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$'
    Moins digeste hein?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Je passe un peu tardivement
    mais merci à vous deux
    je vais réinvestir vos idées et on verra
    à suivre
    Paul

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/01/2012, 09h33
  2. Réponses: 11
    Dernier message: 23/05/2007, 15h51
  3. Réponses: 4
    Dernier message: 07/09/2006, 15h41
  4. Récupérer une adresse MAC sur l'entrée standard
    Par the_ionic dans le forum Réseau
    Réponses: 14
    Dernier message: 20/07/2006, 09h56
  5. Vérification syntaxique d'une adresse email
    Par Tchupacabra dans le forum Access
    Réponses: 5
    Dernier message: 14/12/2005, 08h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo