On Sun, 02 Feb 2003 13:09:00 -0400 Christophe PEREZ <[EMAIL PROTECTED]> wrote:
> Bonjour, > > L�, c'est clair, c'est pour Jipe, mais peut-�tre qu'un autre veut s'y > essayer :-)) > > Je veux faire un script, lanc� par le .bashrc, mais qui ne doive �tre > lanc� qu'une seule fois par user et par session. > > J'ai donc mis un test au d�but qui v�rifie s'il est d�j� lanc�, mais le > r�sultat me laisse perplexe. > > J'ai mis quelque chose du genre : > #!/bin/bash > if [ $((`ps -x | grep "mon_script" | grep -v grep | wc -l`)) -gt 1 ]; then > exit > fi > > Mais il semble qu'au lieu d'avoir un processus (lui-m�me), j'en ai > souvent (mais pas tjrs) 2, donc �a ne colle pas. > > Une id�e sur la question ? > > Merci. > > PS : je suis all� sur l'irc, jipe pr�sent mais emble pas en ligne :-) > -- > Christophe PEREZ > > si je comprends bien, tu as un script disons euh ... au hasard toto.sh qui se lance en v�rifiant s'il est d�j� lanc�. ce qui fait que s'il est d�j� lanc�, il apparaitra deux fois dans ps. celui qui est d�j� lanc�, et celui qui se lance en v�rifiant. plut�t que de faire que le script s'auto v�rifie, il serait pr�f�rable de mettre une condition directement dans .bashrc --> ps -x | grep [t]oto.sh >/dev/null 2>&1 || toto.sh >/dev/null 2>&1 & ceci signifie: si ps -x | grep [t]oto.sh renvoie un statut d'erreur, cad si elle ne trouve rien, lancer toto.sh en t�che de fond. cette construction remplace un if then else fi. (dans ce cas, qui n'aurait pas de then, ce qui provoquerait une erreur de syntaxe :) tip :) les [] entourant la premi�re lettre de toto.sh permettent d'�liminer la ligne de ps -x renvoyant grep. et ainsi de se passer d'une commande grep suppl�mentaire. pour ce qui est de l'irc: serveur: irc.freenode.net canal : #debutant comme j'ai une connexion permanente, j'y laisse mon nick, ainsi qu'un bot surtout destin� � �viter que des petits plaisantins ne se l'approprient et y fassent n'importe quoi. mais comme tout un chacun, je travaille, je mange, je dors, je ... fais des tas de choses :) il est � la disposition de tous ceux de la liste qui veulent passer y faire un tour et aussi (surtout ?) pour ceux qui veulent �changer quelques mots ou discuter d'un probl�me particulier en �vitant des threads trop longs sur la liste. une discussion en direct permet de r�gler pas mal de probl�mes et si une solution est trouv�e, elle pourrait (doit!) faire l'objet d'un message sur la liste dont profiterait tout le monde. Pour �a, il suffit de s'y donner rendez-vous, � 2 ou plus. le canal est � vous :) bye jipe
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com"
