From 310a2c101b32a5e71a616027b6a1b788a341bc02 Mon Sep 17 00:00:00 2001 From: manuel Date: Tue, 5 Mar 2013 17:39:48 +0100 Subject: initial GPLv2 release --- tsclient.sh | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100755 tsclient.sh (limited to 'tsclient.sh') diff --git a/tsclient.sh b/tsclient.sh new file mode 100755 index 0000000..7a24c8d --- /dev/null +++ b/tsclient.sh @@ -0,0 +1,108 @@ +#!/bin/bash + +binary="tsclient" +arguments="" +cd "$(dirname $0)" +#export LD_LIBRARY_PATH="../wxBase-2.8.12/lib:../wxxml2/lib" + +#------------------------------------------------------------------------------- + +CHILDS=() +process_running() +{ + CHILDS=`pgrep -d" " -x ${binary}` + if [ ! -z "${CHILDS}" ]; then + return 1 + fi + return 0 +} + +#------------------------------------------------------------------------------- + +start() +{ + local retval=0 + + process_running + local state=$? + if [ ${state} -eq 0 ]; then + retval=1 + ./${binary} ${arguments} + + sleep 1 + process_running + state=$? + if [ ${state} -eq 1 ]; then + ${OUTPUT} && echo "Process started..." + retval=1 + else + ${OUTPUT} && echo "Couldn't start the process" + fi + else + ${OUTPUT} && echo "Process already running" + fi + + return ${retval} +} + +#------------------------------------------------------------------------------- + +stop() +{ + local retval=0 + + process_running + local state=$? + if [ ${state} -eq 1 ]; then + pkill -TERM -x ${binary} + + sleep 1 + process_running + state=$? + if [ ${state} -eq 1 ]; then + pkill -9 -x ${binary} + fi + + ${OUTPUT} && echo "Process stopped" + retval=1 + else + ${OUTPUT} && echo "Process not running" + fi + + return ${retval} +} + +#------------------------------------------------------------------------------- + +RETVAL=0 +OUTPUT=true +if [ ! -z "$2" -a "$2" = "quiet" ]; then + OUTPUT=false +fi + +case "$1" in + start) + start + RETVAL=$? + ;; + stop) + stop + RETVAL=$? + ;; + restart) + stop + start + RETVAL=$? + ;; + status) + process_running + state=$? + if [ ${state} -eq 1 ]; then + ${OUTPUT} && echo "Process is running (${CHILDS})..." + else + ${OUTPUT} && echo "Process is stopped" + fi + ;; +esac + +exit ${RETVAL} -- cgit v1.2.3