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 :

Pb avec grep


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Billets dans le blog
    1
    Par défaut Pb avec grep
    Bonjour,

    je cherche à garantir une saisie utilisateur chiffre only avec grep. Mais impossible de faire marcher la classe inverse.

    La regexp théorique serait ^[0-9]*$ pour ne chercher que des chiffres ou encore [^0-9] pour chercher s'il y a autre chose que des chiffres.

    Mon instruction de test actuelle qui marche pas :

    echo 1 | grep -e [^1]

    ca ne marche pas, ca me trouve que 1 est autre chose qu'un chiffre.

    J'ai essayé d'isoler le motif dans un fichier pour garantir que les caractères spéciaux ne soit pas mis de travers : pareil

    Une idée ?

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 658
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo 1 | grep -e "^[0-9]*$"
    1
    ...
    ?
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre chevronné

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Billets dans le blog
    1
    Par défaut
    Super la réponse...

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 658
    Par défaut
    Super la réponse...
    n'est-ce pas... j'en ai fait d'autres, aussi moisies
    bref
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var=b; echo "$var" | grep -qe "[^1]" && echo "$var n'est pas égal à 1" || echo "$var est égal à 1"
    b n'est pas égal à 1
    var=1; echo "$var" | grep -qe "[^1]" && echo "$var n'est pas égal à 1" || echo "$var est égal à 1"
    1 est égal à 1
    pour moi ça fonctionne...
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Membre chevronné

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Billets dans le blog
    1
    Par défaut
    J'utilise une version portée de grep sous windows je précise car ce script est pour windows (TIVOLI). Tu l'as en pièce jointe si besoin.

    Résultat de la commande :

    echo b | grep -e "[^b]"
    b
    echo b | grep -e "[b]"
    b

    Youpi !
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. script avec grep
    Par turbo_chess dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 23/03/2007, 16h31
  2. petit script avec grep
    Par turbo_chess dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 21/03/2007, 15h39
  3. Probleme avec grep
    Par cryptorchild dans le forum Langage
    Réponses: 5
    Dernier message: 10/12/2005, 10h59
  4. Rechercher un crochet avec grep
    Par le mage tophinus dans le forum Linux
    Réponses: 2
    Dernier message: 27/05/2005, 14h17
  5. Petit problème avec grep
    Par dug dans le forum Shell et commandes GNU
    Réponses: 13
    Dernier message: 11/05/2005, 15h34

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