当前位置: 首页 > news >正文

linux startup.sh shutdown.sh (kkFileView)

linux启动脚本和关闭脚本startup.sh   shutdown.sh (kkFileView)

startup.sh


DIR_HOME=("/opt/openoffice.org3" "/opt/libreoffice" "/opt/libreoffice6.1" "/opt/libreoffice7.0" "/opt/libreoffice7.1" "/opt/libreoffice7.2" "/opt/libreoffice7.3" "/opt/libreoffice7.4" "/opt/openoffice4" "/usr/lib/openoffice" "/usr/lib/libreoffice")
FLAG=
OFFICE_HOME=
KKFILEVIEW_BIN_FOLDER=$(cd "$(dirname "$0")" || exit 1 ;pwd)
PID_FILE_NAME="kkFileView.pid"
PID_FILE="${KKFILEVIEW_BIN_FOLDER}/${PID_FILE_NAME}"
export KKFILEVIEW_BIN_FOLDER=$KKFILEVIEW_BIN_FOLDER
#
## 如pid文件不存在则自动创建
if [ ! -f ${PID_FILE_NAME} ]; thentouch "${KKFILEVIEW_BIN_FOLDER}/${PID_FILE_NAME}"
fi
## 判断当前是否有进程处于运行状态
if [ -s "${PID_FILE}" ]; thenPID=$(cat "${PID_FILE}")echo "进程已处于运行状态,进程号为:${PID}"exit 1
elsecd "$KKFILEVIEW_BIN_FOLDER" || exit 1echo "Using KKFILEVIEW_BIN_FOLDER $KKFILEVIEW_BIN_FOLDER"grep 'office\.home' ../config/application.properties | grep '!^#'if [ $? -eq 0 ]; thenecho "Using customized office.home"elsefor i in ${DIR_HOME[@]}doif [ -f "$i/program/soffice.bin" ]; thenFLAG=trueOFFICE_HOME=${i}breakfidoneif [ ! -n "${FLAG}" ]; thenecho "Installing LibreOffice"sh ./install.shelseecho "Detected office component has been installed in $OFFICE_HOME"fifi## 启动kkFileViewecho "Starting kkFileView..."nohup java -Dfile.encoding=UTF-8 -Dspring.config.location=../config/application.properties -jar kkFileView-4.2.1.jar > ../log/kkFileView.log 2>&1 &echo "Please execute ./showlog.sh to check log for more information"echo "You can get help in our official home site: https://kkview.cn"echo "If you need further help, please join our kk opensource community: https://t.zsxq.com/09ZHSXbsQ"echo "If this project is helpful to you, please star it on https://gitee.com/kekingcn/file-online-preview/stargazers"PROCESS=$(ps -ef | grep kkFileView | awk 'NR==1{print $2}')# 启动成功后将进程号写入pid文件echo "$PROCESS" > "$PID_FILE"
fi

shutdown.sh


#
KKFILEVIEW_BIN_FOLDER=$(cd "$(dirname "$0")" || exit 1 ;pwd)
PID_FILE_NAME="kkFileView.pid"
PID_FILE="${KKFILEVIEW_BIN_FOLDER}/${PID_FILE_NAME}"
export KKFILEVIEW_BIN_FOLDER=$KKFILEVIEW_BIN_FOLDER
#
## pid文件是否存在
if [ ! -e "$PID_FILE" ]; thenecho "kkFileView.pid文件不存在!"exit 1
else## 文件不为空代表程序正在运行,则循环关闭进程。if [ -s "$PID_FILE" ]; then# 读取pid文件内容,开启while循环读取每一行文本赋予给变量PID_FILE。cat "${PID_FILE}" | while read PID;do## 如已读取完毕,则退出脚本。[ -z "$PID" ] && exit 2echo "正在停止进程:${PID}..."## 正常停止进程kill -15 "${PID}" && echo "进程:${PID}停止成功!"done# 关闭所有进程后,重置pid。cat /dev/null > "$PID_FILE"elseecho "kkFileView进程尚未运行!"fi
fi

http://www.lryc.cn/news/484727.html

相关文章:

  • [MySQL]隐式类型转换
  • 面经总结1
  • Oracle19C AWR报告分析之Instance Efficiency Percentages (Target 100%)
  • 数据结构--数组
  • nrm的安装及使用
  • 【MatLab手记】 --从0到了解超超超详过程!!!
  • 从零创建vue+elementui+sass+three.js项目
  • Linux通过使用scp和sftp发送或拉取文件
  • Jtti:服务器总是自动重启怎么办?
  • 北京大学c++程序设计听课笔记101
  • 一键生成本地SSL证书:打造HTTPS安全环境
  • Unity类银河战士恶魔城学习总结(P124 CharacterStats UI玩家的UI)
  • 速盾:cdn 支持 php 吗?
  • 在linux中使用nload实时查看网卡流量
  • 【JavaEE进阶】Spring 事务和事务传播机制
  • Flink1.19编译并Standalone模式本地运行
  • gitlab-development-kit部署gitlab《二》
  • Java面试之多线程并发篇(3)
  • 任何使用 Keras 进行迁移学习
  • Mac 使用mac 原生工具将mp4视频文件提取其中的 mp3 音频文件
  • 【SQL】一文速通SQL
  • 【学习】【HTML】块级元素,行内元素,行内块级元素
  • 握手协议是如何在SSL VPN中发挥作用的?
  • 机器学习 - 为 Jupyter Notebook 安装新的 Kernel
  • CTF攻防世界小白刷题自学笔记13
  • Rust 模板匹配——根据指定图片查找处于大图中的位置(支持GPU加速)
  • JVM详解:类的加载过程
  • Python →爬虫实践
  • Visitor 访问者模式
  • Mac解压包安装MongoDB8并设置launchd自启动