[Petit Problème sous Linux]

Fermé
stena83 - 26 oct. 2005 à 15:44
mamiemando Messages postés 33271 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 septembre 2024 - 27 oct. 2005 à 00:37
Bonjour, j'aimerais recevoir un mail chaque jours d'un rapport d'un antivIrus, et si virus trouvé quels fichiers sont infectés.

J'utilise clamav comme antivirus sous Debian sarge et cron pour automatiser la tâche.

la commande pour lancer le scan c'est :
clamscan -r / > fichier_sortie
, ce qui permet de lister tous les fichier s avec virus trouvé ou pas, et à la fin un résumé :

exemple :
/etc/smb.conf :OK
...
/etc/apache/httpd.conf : FOUND
...

--RESUMER DU SCAN ---
scanned Files : 12 0000
infected files : 1
...


donc j'aimerais afficher uniquement les fichiers infectés + le résumé.

clamscan -r / | grep "FOUND" >fichier_sortie


Cela fonctionne mais ne n'affiche pas le résumé.

Comment afficher le résumé+ les fichiers infectés ?

merci
A voir également:

4 réponses

En fait j'ai trouvé

clamscan -r / > /tmp/analyse && cat /tmp/analyse | grep "FOUND" > /tmp/result | (tail /tmp/analyse >>/tmp/result) | (cat /tmp/result | mail MON_MAIL) | (rm -f /tmp/analyse /tmp/result)

Voila, belle commande de ouf

par contre g du mal a pigé la différence entre && et |
0
crabs Messages postés 908 Date d'inscription lundi 18 avril 2005 Statut Membre Dernière intervention 3 août 2008 507
26 oct. 2005 à 20:39
salut,

commande_shell1 && commande_shell2
siginifie : exécuter la commande_shell2 si l'exécution de la commande_shell1
n'a pas fourni un status d'erreur.
rappel: pour une commande shell, 0 signifie pas d'erreur, tout autre entier
signifie erreur lors de l'exécution
Dans le même genre y 'a '||' qui permet de lance cmd2 si cmd1 est en erreur :
cmd1 || cmd2

commande_shell1 | commande_shell2
toutes les caractères écrits sur la sortie standard de commande_shell1 sont
envoyés sur l'entrée standard de la commande_ shell2.
D'où l'importance d'envoyer les messages d'erreur sur la sortie d'erreur.

A+, Crabs
0
ok merci de ta reponse, mais alors comment faire un truc du genre :

si commande1 réussi alors
commande2
sinon
commande3
0
mamiemando Messages postés 33271 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 septembre 2024 7 781
27 oct. 2005 à 00:37
Fais un script bash (genre plop.sh) avec un if et un else...
http://www.trustonme.net/didactels/148.html

Bonne chance
0