Rechercher : dans
Par :

[linux] en shell tester resultat d'un grep

Dernière réponse le 19 avr 2007 à 16:46:50 Alex, le 19 avr 2007 à 09:57:01 
 Signaler ce message aux modérateurs

Bonjour
je souhaite tester le résultat d'un grep
ceci semble ne pas fonctionner:
if (grep "= 1" $LOGFILE) = "1"

Je veux tester si la valeur renvoyée par grep est 1 ou 0. Grep renvoi une valeur différente s'il trouve = 1. je voudrais la tester.
Merci de votre aide.
Alex

Configuration: Windows XP
Firefox 2.0.0.3

Meilleures réponses pour « [linux] en shell tester resultat d'un grep » dans :
[Shell] Tester une variable numérique Voir Tester une variable numérique    Préambule Dans un environnement "shell", les variables sont, par défaut, de type "chaîne de caractères". De ce fait il n'est pas possible de déclarer une variable de type "entier" (enfin, ceci n'est pas tout à...
Comment récupérer le résultat d'une commande dans une variable VoirComment récupérer le résultat d'une commande dans une variable Préambule Syntaxe Exemples Préambule Il est bien souvent nécessaire de récupérer le résultat d'une commande (ou de son code retour) dans une variable afin de pouvoir...
[Linux] Débuter sous Linux VoirDÉBUTER SOUS LINUX Qu'est-ce que Linux ? Si vous venez de Windows I - LES LIVE-CDS I-1 Quelles distributions choisir ? I-2 Utilisation II - INSTALLER LINUX II-1 Partitionner son disque dur II-2 Multiboot Windows/Linux II-3 Quelles...
Guide d'utilisation du Shell pour débutant VoirSHELL BASH - GUIDE D'UTILISATION - Niveau Débutant Introduction Appel aux membres CCM II. C'est quoi le shell ? III. Comment accéder à la ligne de commande IV. Les consoles virtuelles Exemple : Accéder à la console 3 depuis l'interface...
Linux - Le shell VoirIntroduction au shell L'interpréteur de commandes est l'interface entre l'utilisateur et le système d'exploitation, d'où son nom anglais «shell», qui signifie «coquille». Le shell est ainsi chargé de faire l'intermédiaire le système...
Systèmes UNIX - Le shell VoirIntroduction au shell L'interpréteur de commandes est l'interface entre l'utilisateur et le système d'exploitation, d'où son nom anglais «shell», qui signifie «coquille». Le shell est ainsi chargé de faire l'intermédiaire entre le système...
Commandes Linux VoirTableau des principales commandes Linux Commande Description équivalent DOS ls liste le contenu d'un répertoire dir cd change de répertoire cd cd .. répertoire parent cd.. mkdir crée un nouveau...

1

Benj, le 19 avr 2007 à 11:40:08

Je comprends pas tout mais :

if (`grep "= 1" $LOGFILE`= "1") 


et encore a mon avis si tu grep "=1" t'auras jamais 1 en retour
colle la ligne de ton fichier de log que tu veux tester si = 1

Répondre à Benj

6

Alex, le 19 avr 2007 à 16:44:35

Merci de la réponse j'ai fait autrement finalement.
Je garde cette solution qui me servira surement plus tard
merci a +

Répondre à Alex

2

jipicy, le 19 avr 2007 à 11:55:00
  • +2

Salut,

jp@MDK:~/tmpfs ssh$ cat fich
Bonjour
Aurevoir

jp@MDK:~/tmpfs ssh$ grep "Bonjour" fich >/dev/null; if [ $? == 0 ];then echo "Ok"; else echo "Nok";fi

Ok

jp@MDK:~/tmpfs ssh$ grep "Aurevoir" fich >/dev/null; if [ $? == 0 ];then echo "Ok"; else echo "Nok";fi

Ok

jp@MDK:~/tmpfs ssh$ grep "Adieu" fich >/dev/null; if [ $? == 0 ];then echo "Ok"; else echo "Nok";fi

Nok

jp@MDK:~/tmpfs ssh$
;-)
Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

3

Benj, le 19 avr 2007 à 12:00:30

/dev/null; if [ $? == 0 ];


juste pour ma culture je connais pas /dev/null what is this ?
et donc forcement je comprends pas non plus le $? == 0

Si tu pouvais rapidement m'expliquer jipicy :)

Répondre à Benj

4

jipicy, le 19 avr 2007 à 12:05:55

Salut,

Le "/dev/null" c'est une sorte de poubelle sans fond (un trou noir quoi), où tu envoies tout ce que tu ne veux pas voir en sortie.

Le "$?" est une variable du shell contenant le code retour de la dernière commande exécutée, dans notre cas celle de grep (0 si correspondance avec le motif et 1 si pasde cprrespondance).

;-))
Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

5

Benj, le 19 avr 2007 à 12:08:57

Oki :), je te remercie, Bon app :)
ce matin j'ai appris le python cette aprem je passe au codage pour le traitement de mon fichier ;) je te tiens au courant

Répondre à Benj

7

 Alex, le 19 avr 2007 à 16:46:50

Merci de la réponse j'ai fait autrement finalement.
Je garde cette solution qui me servira surement plus tard
merci à vous
Alex

Répondre à Alex