shutdown.sh 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #!/bin/bash
  2. #
  3. #
  4. #############################
  5. # Author: sanxi
  6. # Version: 1.0
  7. # Date: 2021/09/17
  8. # Description: v1.0:修改kkFileView关闭进程机制
  9. #############################
  10. #
  11. KKFILEVIEW_BIN_FOLDER=$(cd "$(dirname "$0")" || exit 1 ;pwd)
  12. PID_FILE_NAME="kkFileView.pid"
  13. PID_FILE="${KKFILEVIEW_BIN_FOLDER}/${PID_FILE_NAME}"
  14. export KKFILEVIEW_BIN_FOLDER=$KKFILEVIEW_BIN_FOLDER
  15. #
  16. ## pid文件是否存在
  17. if [ ! -e "$PID_FILE" ]; then
  18. echo "kkFileView.pid文件不存在!"
  19. exit 1
  20. else
  21. ## 文件不为空代表程序正在运行,则循环关闭进程。
  22. if [ -s "$PID_FILE" ]; then
  23. # 读取pid文件内容,开启while循环读取每一行文本赋予给变量PID_FILE。
  24. cat "${PID_FILE}" | while read PID;do
  25. ## 如已读取完毕,则退出脚本。
  26. [ -z "$PID" ] && exit 2
  27. echo "正在停止进程:${PID}..."
  28. ## 正常停止进程
  29. kill -15 "${PID}" && echo "进程:${PID}停止成功!"
  30. done
  31. # 关闭所有进程后,重置pid。
  32. cat /dev/null > "$PID_FILE"
  33. else
  34. echo "kkFileView进程尚未运行!"
  35. fi
  36. fi