summaryrefslogtreecommitdiffstats
path: root/tsclient.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tsclient.sh')
-rwxr-xr-xtsclient.sh108
1 files changed, 108 insertions, 0 deletions
diff --git a/tsclient.sh b/tsclient.sh
new file mode 100755
index 0000000..7a24c8d
--- /dev/null
+++ b/tsclient.sh
@@ -0,0 +1,108 @@
1#!/bin/bash
2
3binary="tsclient"
4arguments=""
5cd "$(dirname $0)"
6#export LD_LIBRARY_PATH="../wxBase-2.8.12/lib:../wxxml2/lib"
7
8#-------------------------------------------------------------------------------
9
10CHILDS=()
11process_running()
12{
13 CHILDS=`pgrep -d" " -x ${binary}`
14 if [ ! -z "${CHILDS}" ]; then
15 return 1
16 fi
17 return 0
18}
19
20#-------------------------------------------------------------------------------
21
22start()
23{
24 local retval=0
25
26 process_running
27 local state=$?
28 if [ ${state} -eq 0 ]; then
29 retval=1
30 ./${binary} ${arguments}
31
32 sleep 1
33 process_running
34 state=$?
35 if [ ${state} -eq 1 ]; then
36 ${OUTPUT} && echo "Process started..."
37 retval=1
38 else
39 ${OUTPUT} && echo "Couldn't start the process"
40 fi
41 else
42 ${OUTPUT} && echo "Process already running"
43 fi
44
45 return ${retval}
46}
47
48#-------------------------------------------------------------------------------
49
50stop()
51{
52 local retval=0
53
54 process_running
55 local state=$?
56 if [ ${state} -eq 1 ]; then
57 pkill -TERM -x ${binary}
58
59 sleep 1
60 process_running
61 state=$?
62 if [ ${state} -eq 1 ]; then
63 pkill -9 -x ${binary}
64 fi
65
66 ${OUTPUT} && echo "Process stopped"
67 retval=1
68 else
69 ${OUTPUT} && echo "Process not running"
70 fi
71
72 return ${retval}
73}
74
75#-------------------------------------------------------------------------------
76
77RETVAL=0
78OUTPUT=true
79if [ ! -z "$2" -a "$2" = "quiet" ]; then
80 OUTPUT=false
81fi
82
83case "$1" in
84 start)
85 start
86 RETVAL=$?
87 ;;
88 stop)
89 stop
90 RETVAL=$?
91 ;;
92 restart)
93 stop
94 start
95 RETVAL=$?
96 ;;
97 status)
98 process_running
99 state=$?
100 if [ ${state} -eq 1 ]; then
101 ${OUTPUT} && echo "Process is running (${CHILDS})..."
102 else
103 ${OUTPUT} && echo "Process is stopped"
104 fi
105 ;;
106esac
107
108exit ${RETVAL}