Advertisement
Guest User

Untitled

a guest
May 25th, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. #! /bin/bash
  2. declare -A PID_f
  3. declare -a programi_PID
  4. declare -A program_procesi
  5.  
  6. run(){
  7.  
  8. ukaz=$(echo $1 | cut -d":" -f4)
  9. interval=$(echo $1 | cut -d":" -f3)
  10. procesi=$(echo $1 | cut -d":" -f2)
  11.  
  12. program_procesi[$ukaz]=$procesi
  13.  
  14. if (( $(pgrep -f -x -u $USER "$ukaz" | wc -w) < "$interval" ));
  15. then
  16. eval $ukaz &
  17. programi_pid+=($!)
  18. kill -9 ${PID_f[$ukaz]}
  19. preverjaj "$ukaz" "$interval" "$procesi" &
  20. PID_f[$ukaz]=$!
  21. else
  22. kill -9 ${PID_f[$ukaz]}
  23. preverjaj "$ukaz" "$interval" "$procesi" &
  24. PID_f[$ukaz]=$!
  25. fi
  26.  
  27. }
  28.  
  29. stop(){
  30. echo "$1"
  31.  
  32. }
  33.  
  34. log(){
  35. echo "$1"
  36.  
  37. }
  38.  
  39. exit_comm(){
  40. echo "$1"
  41.  
  42. }
  43. if [[ -f $1 ]];then
  44. mkfifo $1
  45. fi
  46.  
  47. if [[ -f "delete_me" ]];then
  48. mkdir delete_me
  49. fi
  50. while true
  51. do
  52. if read line<$1;then
  53. if [[ "$line" =~ ^run:[0-9]+:[0-9.]+:.+$ && "$line" != "" && $(type -P $( echo "$line" | cut -d ":" -f4)) ]];then
  54. run "$line"
  55. fi
  56. fi
  57.  
  58. if [[ ${line:0:4} = "stop" ]]
  59. then
  60. stop "$line"
  61. fi
  62.  
  63.  
  64. if [[ ${line:0:3} = "log" ]]
  65. then
  66. log "$line"
  67. fi
  68.  
  69. if [[ ${line:0:4} = "exit" ]]
  70. then
  71. exit_comm "$line"
  72. fi
  73. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement