Je sais que je ne suis pas forcément dans le bon forum, mais s'il existe, je ne l'ai pas trouvé...
Je souhaite faire un .sh afin de lancer mon programme en tache de fond et de l'arreter (sous SunOS).
Voici ce que j'ai réussi à faire jusqu'à présent :
J'aimerai savoir pourquoi j'ai toujours deux valeurs dans ma variable PID : une qui correspond à mon processus hosaflow, et l'autre à rien...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 #!/bin/sh #set -x # pour debugger ce script USAGE="Usage: `basename $0` {start|stop} [1-20]" #2 arguments if [ $# != 2 ]; then echo $USAGE exit 127 fi PID=`ps -efo pid,args | grep "hosaflow" | grep -v grep | awk '{print $1}' | tr '\n' ' '` case $1 in start) if [ $# = 2 ]; then echo "Demarrage du processus ${MODULE}" nohup hosaflow $2 2>> /users/sbulin/wmq/hosaduplic/temp/hosaflow.log & else echo $USAGE exit 127 fi ;; stop) if [ "$PID" != "" ]; then echo "Arret du processus : $PID" echo $PID # kill -INT $PID else echo "Aucun processus" fi ;; *) echo $USAGE exit 127 ;; esac
Partager