📄 sslexplorer
字号:
#! /bin/sh## Skeleton sh script suitable for starting and stopping # wrapped Java apps on the Solaris platform. ## Make sure that PIDFILE points to the correct location,# if you have changed the default location set in the # wrapper configuration file.##-----------------------------------------------------------------------------# These settings can be modified to fit the needs of your application# ApplicationAPP_NAME="sslexplorer"APP_LONG_NAME="SSL-Explorer"# WrapperWRAPPER_CMD="install/platforms/linux/wrapper"if [ -z "${WRAPPER_CONF}" ]then WRAPPER_CONF="conf/wrapper.conf"fi# Priority at which to run the wrapper. See "man nice" for valid priorities.# nice is only used if a priority is specified.PRIORITY=# Location of the pid file.if [ -z "${PIDDIR}" ]then PIDDIR="tmp"fi# If uncommented, causes the Wrapper to be shutdown using an anchor file.# When launched with the 'start' command, it will also ignore all INT and# TERM signals.#IGNORE_SIGNALS=true# If specified, the Wrapper will be run as the specified user when the 'start'# command is passed to this script. When running with the 'console' command# the current user will be used.# IMPORTANT - Make sure that the user has the required privileges to write# the PID file and wrapper.log files. Failure to be able to write the log# file will cause the Wrapper to exit without any way to write out an error# message.# NOTE - This will set the user which is used to run the Wrapper as well as# the JVM and is not useful in situations where a privileged resource or# port needs to be allocated prior to the user being changed.#RUN_AS_USER=# Do not modify anything beyond this point#-----------------------------------------------------------------------------# Get the fully qualified path to the scriptcase $0 in /*) SCRIPT="$0" ;; *) PWD=`pwd` SCRIPT="$PWD/$0" ;;esac# Change spaces to ":" so the tokens can be parsed.SCRIPT=`echo $SCRIPT | sed -e 's; ;:;g'`# Get the real path to this script, resolving any symbolic linksTOKENS=`echo $SCRIPT | sed -e 's;/; ;g'`REALPATH=for C in $TOKENS; do REALPATH="$REALPATH/$C" while [ -h "$REALPATH" ] ; do LS="`ls -ld "$REALPATH"`" LINK="`expr "$LS" : '.*-> \(.*\)$'`" if expr "$LINK" : '/.*' > /dev/null; then REALPATH="$LINK" else REALPATH="`dirname "$REALPATH"`""/$LINK" fi donedone# Change ":" chars back to spaces.REALPATH=`echo $REALPATH | sed -e 's;:; ;g'`# Change the current directory to the location of the scriptcd "`dirname "$REALPATH"`"# Capture the current directoryWRAPPER_DIR="`pwd`"# Change back up to the rootcd ../../..# Process IDANCHORFILE="$PIDDIR/$APP_NAME.anchor"PIDFILE="$PIDDIR/$APP_NAME.pid"pid=""# Resolve the location of the 'ps' commandPSEXE="/usr/bin/ps"if [ ! -x $PSEXE ]then PSEXE="/bin/ps" if [ ! -x $PSEXE ] then echo "Unable to locate 'ps'." echo "Please report this message along with the location of the command on your system." exit 1 fifi# Build the nice clauseif [ "X$PRIORITY" = "X" ]then CMDNICE=""else CMDNICE="nice -$PRIORITY"fi# Check the configured userif [ "X$RUN_AS_USER" != "X" ]then # Resolve the location of the 'id' command IDEXE="/usr/xpg4/bin/id" if [ ! -x $IDEXE ] then IDEXE="/usr/bin/id" if [ ! -x $IDEXE ] then echo "Unable to locate 'id'." echo "Please report this message along with the location of the command on your system." exit 1 fi fi if [ "`$IDEXE -u -n`" = "$RUN_AS_USER" ] then # Already running as the configured user. Avoid password prompts by not calling su. RUN_AS_USER="" fifigetpid() { if [ -f $PIDFILE ] then if [ -r $PIDFILE ] then pid=`cat $PIDFILE` if [ "X$pid" != "X" ] then # Verify that a process with this pid is still running. pid=`$PSEXE -p $pid | grep $pid | grep -v grep | awk '{print $1}' | tail -1` if [ "X$pid" = "X" ] then # This is a stale pid file. rm -f $PIDFILE echo "Removed stale pid file: $PIDFILE" fi fi else echo "Cannot read $PIDFILE." exit 1 fi fi}testpid() { pid=`$PSEXE -p $pid | grep $pid | grep -v grep | awk '{print $1}' | tail -1` if [ "X$pid" = "X" ] then # Process is gone so remove the pid file. rm -f $PIDFILE fi}console() { echo "Running $APP_LONG_NAME..." getpid if [ "X$pid" = "X" ] then if [ "X$IGNORE_SIGNALS" = "X" ] then exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.java.library.path.1="$WRAPPER_DIR" wrapper.pidfile=$PIDFILE else exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.java.library.path.1="$WRAPPER_DIR" wrapper.pidfile=$PIDFILE wrapper.anchorfile=$ANCHORFILE fi else echo "$APP_LONG_NAME is already running." exit 1 fi} start() { echo "Starting $APP_LONG_NAME..." getpid if [ "X$pid" = "X" ] then if [ "X$IGNORE_SIGNALS" = "X" ] then if [ "X$RUN_AS_USER" = "X" ] then exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.daemonize=TRUE else su -m $RUN_AS_USER -c "exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.daemonize=TRUE" fi else if [ "X$RUN_AS_USER" = "X" ] then exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.anchorfile=$ANCHORFILE wrapper.ignore_signals=TRUE wrapper.daemonize=TRUE else su -m $RUN_AS_USER -c "exec $CMDNICE $WRAPPER_CMD $WRAPPER_CONF wrapper.pidfile=$PIDFILE wrapper.anchorfile=$ANCHORFILE wrapper.ignore_signals=TRUE wrapper.daemonize=TRUE" fi fi else echo "$APP_LONG_NAME is already running." exit 1 fi} stopit() { echo "Stopping $APP_LONG_NAME..." getpid if [ "X$pid" = "X" ] then echo "$APP_LONG_NAME was not running." else if [ "X$IGNORE_SIGNALS" = "X" ] then # Running so try to stop it. kill $pid if [ $? -ne 0 ] then # An explanation for the failure should have been given echo "Unable to stop $APP_LONG_NAME." exit 1 fi else rm -f $ANCHORFILE if [ -f $ANCHORFILE ] then # An explanation for the failure should have been given echo "Unable to stop $APP_LONG_NAME." exit 1 fi fi # We can not predict how long it will take for the wrapper to # actually stop as it depends on settings in wrapper.conf. # Loop until it does. savepid=$pid CNT=0 TOTCNT=0 while [ "X$pid" != "X" ] do # Loop for up to 5 minutes if [ "$TOTCNT" -lt "300" ] then if [ "$CNT" -lt "5" ] then CNT=`expr $CNT + 1` else echo "Waiting for $APP_LONG_NAME to exit..." CNT=0 fi TOTCNT=`expr $TOTCNT + 1` sleep 1 testpid else pid= fi done pid=$savepid testpid if [ "X$pid" != "X" ] then echo "Timed out waiting for $APP_LONG_NAME to exit." echo " Attempting a forced exit..." kill -9 $pid fi pid=$savepid testpid if [ "X$pid" != "X" ] then echo "Failed to stop $APP_LONG_NAME." exit 1 else echo "Stopped $APP_LONG_NAME." fi fi}status() { getpid if [ "X$pid" = "X" ] then echo "$APP_LONG_NAME is not running." exit 1 else echo "$APP_LONG_NAME is running ($pid)." exit 0 fi}dump() { echo "Dumping $APP_LONG_NAME..." getpid if [ "X$pid" = "X" ] then echo "$APP_LONG_NAME was not running." else kill -3 $pid if [ $? -ne 0 ] then echo "Failed to dump $APP_LONG_NAME." exit 1 else echo "Dumped $APP_LONG_NAME." fi fi}case "$1" in 'console') console ;; 'start') start ;; 'stop') stopit ;; 'restart') stopit start ;; 'status') status ;; 'dump') dump ;; *) echo "Usage: $0 { console | start | stop | restart | status | dump }" exit 1 ;;esacexit 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -