If et grep en bash -- Rechercher une chaine et if statement
anselme
-
Flachy Joe Messages postés 2303 Statut Membre -
Flachy Joe Messages postés 2303 Statut Membre -
Bonjour,
J'essaye de faire un petit script bash qui effectue une action s' il trouve une chaine dans fichier mais impossible de le faire marcher.
je ne comprends pas pourquoi..
A chaque fois il me renvoie l'action "Pas bon" ; alors que j'ai bien la chaine dans un de mes fichiers.
J'ai l'impression que le grep ne renvoie pas 0 à la sortie..
Peut-être pouvez-vous m'aider .
#!/bin/bash
find /home/ -type f | xargs grep -q 'chaineatrouver'
if [ $? == 0 ] #if the result is not equal to zero
then
echo "Action"
else
echo "Pas d'action"
exit 1
fi
exit 0
Merci d'avance
J'essaye de faire un petit script bash qui effectue une action s' il trouve une chaine dans fichier mais impossible de le faire marcher.
je ne comprends pas pourquoi..
A chaque fois il me renvoie l'action "Pas bon" ; alors que j'ai bien la chaine dans un de mes fichiers.
J'ai l'impression que le grep ne renvoie pas 0 à la sortie..
Peut-être pouvez-vous m'aider .
#!/bin/bash
find /home/ -type f | xargs grep -q 'chaineatrouver'
if [ $? == 0 ] #if the result is not equal to zero
then
echo "Action"
else
echo "Pas d'action"
exit 1
fi
exit 0
Merci d'avance
A voir également:
- Bash if grep
- Bingo bash - Télécharger - Divers Jeux
- Bash addition ✓ - Forum Shell
- [Bash]Impossible de faire une simple addition - Forum Shell
- If out - Forum Matériel & Système
- Find grep ✓ - Forum Linux / Unix
mais ce n'est pas très précis, car dès qu'un fichier comporte une correspondance find s'arrête.
En plus, tu ne sais pas quel(s) fichier(s) contient la chaîne recherchée.
:(
Ceci ne justifie rien.
Au départ il y a des faiblesses.
Quand on les voit, on peut/doit les signaler.
Enfin, vu les connaissance qu'on a sur l'utilité du script on peut tout imaginer, donc c'est vrai qu'on peu donner le plus d'info possible.
et d'une manière générale, l'algo du script.