#!/bin/bash # # tcpresponder Multi-purpose port listener invoker. # Ver. 0.9.3 # # chkconfig: 2345 98 2 # description: Multi-purpose port listener invoker # # pidfile: /var/run/tcpresponder.pid ## Basic setup variables. PROG=$(basename $0) # tcpserver path TCPSERVER=/usr/local/bin/tcpserver [ -f /etc/sysconfig/tcpresponder ] && . /etc/sysconfig/tcpresponder ## Procedures from here. show_help () { cat <$PIDFILE touch $LOCKFILE exit 0 ;; stop) what_pid if [ -n "$pid" ]; then kill -TERM $pid if [ $? -eq 0 ]; then echo "PID:$pid terminated" rm -f $PIDFILE $LOCKFILE exit 0 fi fi echo "no such tcpserver process" rm -f $PIDFILE $LOCKFILE exit 1 ;; status) read pid listen < <(ps axww |egrep "tcpserver .* $port " |grep -v grep |awk '{ printf("%s %s\n",$1,$(NF-1)); }') if [ "x$pid" = "x" ]; then echo $PROG is not running else echo "Listening port $listen (PID:$pid)" fi exit 0 ;; esac