Bonjour,
Je viens vers vous car j'ai testé de nombreuses choses et je n'ai toujours pas réussi à m'en sortir...
Mon problème est le suivant.
J'utilise un script qui me sert à administrer une appli serveur.
Ce script permet de lancer l'appli, de l'arrêter, de l'interroger (via un autre binaire), etc.
Le soucis est au lancement... L'appli est bien lancée par le script, mais ce dernier ne rend pas la main ! Hors c'est en quelque sorte un script générique que j'adapte à plusieurs applis serveurs et c'est semble-t-il la première fois que ce problème survient.
Le fonctionnement habituel est que l'appli est lancée puis le script se termine et rend la main.
Voici la partie du code qui me sert à lancer l'appli :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 # je mets la variable au cas où ca puisse éclaircir le code use constant TOTO => BIN_PATH . 'toto'; # # Lancement du daemon # my @commandLine = (TOTO, '-param1', '-param2', convertPath($filePath), '-log', '+' . convertPath($logFile)); system(@commandLine);
Et ce que j'ai au prompt :
Et là çà se met en append, en gros le process est bien lancé, l'appli fonctionne correctement mais le script ne rend pas la main et il attend que l'appli soit arrêté (via un kill) pour rendre la main...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 serveur1 <SYS_V> 89 TITI% TITI.pl start 02/28 17:32 (toto) Switching debug log to +/pim/pam/toto/toto.log
Je ne m'y connais pas bien en PERL, d'ordre général je fais du copié/collé et quelques modifs par ci par là. Là j'ai testé plusieurs syntaxes, j'ai testé de forker et j'en passe.
En fait je cherche juste à lancer l'appli en arrière-plan, pour que le script rende la main..
Version du perl utilisé : This is perl, version 5.005_03 built for sun4-solaris
Je suis sous environnement UNIX SunOS
La version de perl ne peut pas être changée (contrainte professionnelle).
Merci d'avance pour votre aide.
S'il y a besoin de plus de renseignements je les mettrai.
Amicalement,
Sylvain
Partager