您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

46 行
639B

  1. #!/bin/bash
  2. PIDFILE=""
  3. PIDVAL=""
  4. pidfile() {
  5. DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
  6. PIDFILE="$DIR/logs/pid"
  7. if [ ! -f $PIDFILE ]; then
  8. PIDFILE=""
  9. fi
  10. }
  11. pidval() {
  12. pidfile
  13. if [ ! -z $PIDFILE ]; then
  14. PIDVAL=`pgrep -F "$PIDFILE"`
  15. else
  16. PIDVAL=""
  17. fi
  18. }
  19. pidval
  20. if [ ! -z "$PIDVAL" ]; then
  21. kill -SIGTERM "$PIDVAL"
  22. COUNTER=500
  23. while [ $COUNTER -gt 0 ]; do
  24. pidval
  25. if [ -z "$PIDVAL" ]; then
  26. COUNTER=0
  27. else
  28. sleep 0.1
  29. ((--COUNTER))
  30. fi
  31. done
  32. if [ ! -z $PIDVAL ]; then
  33. kill -SIGKILL "$PIDVAL"
  34. sleep 1
  35. fi
  36. fi
  37. pidfile
  38. if [ ! -z "$PIDFILE" ]; then
  39. rm "$PIDFILE"
  40. fi