Guest User

Untitled

a guest
Jun 20th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3.  
  4. LANCEMENT_HEURE_DEBUT=09
  5. LANCEMENT_HEURE_FIN=10
  6. ARRET_HEURE_DEBUT=18
  7. ARRET_HEURE_FIN=19
  8. NOMBRE_SCRIPT=9
  9. SCRIPT_PATTERN="pysoul/pysoul.py"
  10. IDX=1
  11. SIGNAL_TO_KILL=1
  12.  
  13.  
  14. function runScript(){
  15. local lINDEX="${1}"
  16. local lSCRIPTNAME="/home/user${IDX}/${PATTERN}"
  17. if [ $(ps aux | grep -v grep | grep "${lSCRIPTNAME}" | wc -l) -eq 0 ]; then
  18. echo "[+] launching script ${lSCRIPTNAME} with UID user${IDX}"
  19. su "user${IDX}" -c "/home/user${IDX}/${PATTERN}"
  20. else
  21. echo "[-] script ${lSCRIPTNAME} already launched"
  22. fi
  23. }
  24.  
  25.  
  26.  
  27. function killScript(){
  28. local lINDEX="${1}"
  29. local lSCRIPTNAME="/home/user${IDX}/${PATTERN}"
  30. if [ $(ps aux | grep -v grep | grep "${lSCRIPTNAME}" | wc -l) -eq 0 ]; then
  31. echo "[-] script ${lSCRIPTNAME} not launched"
  32. else
  33. echo "[+] killing script ${lSCRIPTNAME}"
  34. local lPID=$(ps aux | grep -v grep | grep "${lSCRIPTNAME}" | awk '{print $2}')
  35. kill -${SIGNAL_TO_KILL} $()
  36. fi
  37. }
  38.  
  39.  
  40.  
  41. while [ true ]; do
  42. HEURE_COURANTE=$(date +'%H')
  43. if [ ${HEURE_COURANTE} -ge ${LANCEMENT_HEURE_DEBUT} -a ${HEURE_COURANTE} -le ${LANCEMENT_HEURE_FIN} ]; then
  44. runScript "${IDX}"
  45. fi
  46.  
  47.  
  48. if [ ${HEURE_COURANTE} -ge ${ARRET_HEURE_DEBUT} -a ${HEURE_COURANTE} -le ${ARRET_HEURE_FIN} ]; then
  49. killScript "${IDX}"
  50. fi
  51.  
  52. sleep $(( 60 * 1 )) # 1 minute
  53.  
  54. IDX=$(( ${IDX} + 1 ))
  55. if [ ${IDX} -ge ${NOMBRE_SCRIPT} ]; then
  56. IDX=1
  57. fi
  58.  
  59. done
Add Comment
Please, Sign In to add comment