📄 getboksmacs.sh.in
字号:
#!/usr/bin/env bash# This script is relatively complicated. The getBoksMacs process sometimes# hangs, and instead of fixing the bug that causes this problem, an elaborate# hack to kill the process has been written instead. getBoksMacs indicates# that its work is done by creating the $JOB_FINISHED file.prefix=@prefix@exec_prefix=@exec_prefix@bindir=@bindir@localstatedir=@localstatedir@sysconfdir=@sysconfdir@libdir=@libdir@javalibdir=@javalibdir@NAV_CONF="${sysconfdir}/nav.conf"function getopt() { awk -F= "/$1/"' && $1!~/#.*/{gsub("^[\t ]+", "", $2); gsub("[\t ]+$", "", $2); print $2}' $NAV_CONF}if test -z "$JAVA_HOME"; then JAVA_HOME=`getopt JAVA_HOME`fiif test -z "$JAVA_HOME"; then JAVA=`which java`else JAVA="$JAVA_HOME/bin/java"fiif ! test -x "$JAVA"; then echo "Could not find a suitable Java environment." >&2 echo "Maybe you should set the JAVA_HOME variable?" >&2 exit 1fiJVM_OPTS=`getopt JVM_OPTS_GETBOKSMACS`if test -z "$JVM_OPTS"; then JVM_OPTS="-Xmx256m"fiJVM_OPTS="$JVM_OPTS -Djava.ext.dirs=${javalibdir}"CUR_DIR=${javalibdir}/getBoksMacsLOG_DIR="${localstatedir}/log"PIDFILE=${localstatedir}/run/getBoksMacs.pidJOB_FINISHED=${localstatedir}/run/boksmacs-finished.flaggetpid() { if test -f "$PIDFILE"; then local pidnum=`cat $PIDFILE` if (ps -p "${pidnum}" >/dev/null); then echo $pidnum fi fi}if test -z `getpid` || test -f "$JOB_FINISHED"; then cd $CUR_DIR if test -f "$JOB_FINISHED"; then # Must kill old script kill -9 $pidnum rm -f "$JOB_FINISHED" sleep 2 fi # Check again that getBoksMacs is not already running if test -z `getpid`; then # Now run the camlogger $JAVA $JVM_OPTS -jar getBoksMacs.jar $1 >> "$LOG_DIR/getBoksMacs.log" & pidno="$!" echo $pidno >$PIDFILE wait $pidno if test -f "$JOB_FINISHED"; then rm -f "$JOB_FINISHED" fi rm $PIDFILE else echo "ERROR, kill -9 of previous getBoksMacs failed!" >&2 exit 1 fielse echo "Previous instance of getBoksMacs is still not finished" >&2fi
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -