Script vérification processus en cours

Résolu/Fermé
jollyjohn Messages postés 100 Date d'inscription mercredi 16 juin 2010 Statut Membre Dernière intervention 18 janvier 2016 - Modifié par jollyjohn le 20/08/2011 à 15:47
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 20 août 2011 à 15:54
Bonjour,

j'ai réalisé un script qui s'exécute tous les jours sur mon serveur Debian.

il envoie par mail a l'administrateur la liste de tous les processus interdits qui tournent sur le serveur.

Pour cela j'ai créé un fichier texte listant des processus interdits (fichier nommé "procinterdit") et j'ai pris un processus au hasard pour exemple.

Je liste tous le processus en cours que j'envoie dans un autre fichier texte(fichier nommé "procencours") puis je fait la différence entre les 2 fichiers ce qui me permet d'obtenir les processus interdits en cours de fonctionnement dans un dernier fichier (fichier nommé "difference")

Enfin j'envoie par mail à un des mes utilisateurs la liste des processus interdits en cours c'est a dire le contenu du fichier "difference"

J'aimerais toutefois que le mail ne soit envoyé à l'administrateur qu'en cas de processus interdit lancé et non systématiquement. En effet, pour l'instant le mail est envoyé même si aucun processus interdit n'est lancé.

Voici le contenu de mon script :

#!/bin/sh

ps -a > /home/john/procencours
diff procencours procinterdit > difference
cat difference | mail -s "Processus interdits en cours" jean@rosea-phoenix.org


Je pense qu'il faudrait contrôler que le fichier "difference" soit vide et n'envoyer le mail qu'au cas ou il n'est pas vide. Seulement, je ne vois pas comment l'incorporer dans mon script.

Merci d'avance

1 réponse

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 417
20 août 2011 à 15:54
Salut,

Il suffit de tester si ton fichier existe et qu'il n'est pas vide.

man bash et plus particulièrement les expressions conditionnelles (-s).
0