[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: détecter le lancement d'un programme



LO,


On Sat, Jun 06, 2015 at 11:33:14PM +0200, enae wrote:

[...]
> dans le cadre d'une application, je souhaite détecter le lancement d'un
> programme (type: cp, mv) afin de lancer un script bash lorsque la commande
> est détectée.
> Y-a-t-il un moyen de faire ceci?

Jette un œil à 'pidof' peut-être...

Je m'en sers par exemple comme ceci :

while (pidof /usr/bin/wget > /dev/null); do sleep 1; done && wget -i links1

pour lancer le téléchargement d'une seconde liste de liens, alors
qu'une première est déjà en cours et que je veux attendre la fin.

(On ne sait pas compléter un fichier de liens passé à 'wget' une fois
qu'il est lancé, donc la boucle while surveille qu'il existe toujours
un pid pour 'wget' ['pidof' renvoi le pid du/des processus indiqués]
et dors une seconde tant que c'est le cas. Une fois que le pid
disparaît, 'wget' ne tourne plus et il exécute alors une nouvelle
instance, avec un autre fichier de liens...)


N.B. dans ton cas, si ton 'cp' ou 'mv' s'exécute presque
instantanément, je ne sais pas trop ce que ça va donner ?

Mais dans ce cas, si tu as un certain contrôle sur les fichiers copiés
ou mouvés, ou sur le(s) répertoire(s) de destination, tu peux regarder
du côté de 'inoticoming' qui est capable de lancer une action en cas
d'arrivée d'un fichier à un endroit surveillé...

Hih,


-- 

JFS.


Reply to: