No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

48 líneas
668B

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