Re: [#!/fr] ps et Launchd

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Maurice Inzirillo 4DNC
Date:  
À: La liste francophone des scripts shell
Sujet: Re: [#!/fr] ps et Launchd

Le 3 juin 08 à 10:19, Patrick Proniewski a écrit :

> Bonjour,
>
> On 3 juin 08, at 09:43, Maurice Inzirillo 4DNC wrote:
>
>> J'ai un petit soucis avec launchd sous Mac OS X 10.4.11. J'utilise
>> l'interface Lingon 1.2.1
>
> attention à Launchd sous Mac OS X 10.4, il est quand même légèrement
> buggué.


Gloups

>
>
>
>>     <key>Disabled</key>
>>     <true/>

>
> tu es sûr pour le "true" de Disabled ?


C'est un copié/collé malheureux.

Il est bien sûr à false lorsque je fais mes tests

>
>
>
>>     <key>ProgramArguments</key>
>>     <array>
>>         <string>sh</string>
>>         <string>/Users/me/Desktop/MyApp_Ctrl.sh</string>
>>     </array>

>
>
> si /Users/me/Desktop/MyApp_Ctrl.sh est exécutable, tu peux te
> passer de la ligne "<string>sh</string>"


oui effectivement. Je l'ai rajouté par acquis de conscience. Mais même
supprimé le résultat reste identique.

>
>
> Pour finir, launchd n'a pas vraiment un environnement comparable à
> ton environnement de shell, donc comme Jayce le mentionne,
> j'utiliserai les chemins complet pour les exécutables, et sans doute
> que j'utiliserai la sortie d'erreur de launchd pour voir ce qu'il se
> passe vraiment :
>
>        <key>StandardErrorPath</key>
>        <string>/tmp/MyApp_Ctrl.err</string>

>



J'ai rajouté les chemins complets, ce qui me donne :

#!/bin/bash
# defined by Apple
. /etc/rc.common

PID1=`/bin/ps x | /usr/bin/grep -v grep | /usr/bin/grep '/Users/me/
Desktop/myFolder.com/My Server.app/Contents/MacOS/My Server' | /usr/
bin/cut -c1-5`
/bin/echo "process : $PID1";
if [ -n "$PID1" ]
then
echo "step1";
else echo "step2";
fi

et j'ai défini des fichiers pour StandardOut et StandardError

Voici ma nouvelle plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd 
">
<plist version="1.0">
<dict>
    <key>Debug</key>
    <true/>
    <key>Label</key>
    <string>com.4dnc.launchd.MyApp</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Users/me/Desktop/MyApp_Ctrl.sh</string>
    </array>
    <key>RunAtLoad</key>
    <false/>
    <key>StandardErrorPath</key>
    <string>/Users/me/Desktop/StandardError.error</string>
    <key>StandardOutPath</key>
    <string>/Users/me/Desktop/StandardOut.error</string>
    <key>StartInterval</key>
    <integer>300</integer>
</dict>
</plist>


StandardError.error reste vide


StandardOut.error me donne bien mes echo qui confirment que PID est
vide :-(

Donc le chemin d'accès complet n'ajoute rien.

Je me demande si ce n'est pas la syntaxe de la ligne qui récupère le
PID de mon server qui foire.

PID1=`/bin/ps x | /usr/bin/grep -v grep | /usr/bin/grep '/Users/me/
Desktop/myFolder.com/My Server.app/Contents/MacOS/My Server' | /usr/
bin/cut -c1-5`



Maurice Inzirillo
--
4D NET Center S.A.

4DBK 3.1 <http://www.4dbk.com/>
Téléphone : +41 (0)32 342 27 32
email : maurice.inzirillo@???
iChat : maurice_inzirillo@???
Skype : maurice.inzirillo



_______________________________________________
archives :
http://listes.patpro.net/list/sshfr.fr.html
http://listes.patpro.net/mailman/listinfo/script_shell_fr