Guest User

Untitled

a guest
May 21st, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.55 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. cmd=${*}
  4. # default to 10 seconds
  5. SIGNAL_TIMEOUT=${SIGNAL_TIMEOUT:-10}
  6.  
  7. log() {
  8. echo "[$(date +%s)] run.sh -- ${1}"
  9. }
  10.  
  11. trap_term() {
  12. log "Received sigterm, sleeping for: ${SIGNAL_TIMEOUT}s"
  13. sleep ${SIGNAL_TIMEOUT}s
  14. log "Forwarding sigterm to: ${child_pid}"
  15. kill -15 ${child_pid}
  16. # block returning until children are dead
  17. wait ${child_pid}
  18. log "child pid has finished.. exiting"
  19. }
  20.  
  21. trap trap_term SIGTERM
  22.  
  23. source /home/matt/Downloads/test
  24.  
  25. log "About to run: ${cmd}"
  26. . ${cmd} &
  27.  
  28. child_pid=$!
  29. log "Child PID: ${child_pid}"
  30.  
  31. wait ${child_pid}
Add Comment
Please, Sign In to add comment