SH Script könnte Hilfe gebrauchen

Dieses Thema im Forum "Server Administration" wurde erstellt von Deex, 11. Feb. 2014.

  1. Deex

    Deex Member

    Hey ;) leider ist mein verständnis von Bash scripten nicht so wirklich gut.
    Mir ist aufgefallen das bei meinem aktuellen Bash Script ein Problem besteht. Sollte das anliegende PHP script nicht reagieren bzw. laufen ohne das PHP es beendet kann der Prozess nicht mehr ausgeführt werden.

    Gibt es die möglichkeit im Script eine Maximale Laufzeit festzulegen für den Prozess z.B. 5min?

    Code:
    #!/bin/bash
    
    PROCESS_NUM=$(ps -ef | egrep "/var/www/clients/client1/web18/web/api/cm_tracker9.php" | grep -v "grep" | wc -l)
    
    if [ $PROCESS_NUM -gt 0 ]
    then
        echo
        echo '#-----------------------------------------------#'
        echo '|  Starting background worker:                  |'
        echo '|                                               |'
        echo '|  >>>>>>>>>>>>>>>>>> FAILED <<<<<<<<<<<<<<<<<< |'
        echo '|          Process is already running!          |'
        echo '#-----------------------------------------------#'
        echo
    else
        echo
        echo '#-----------------------------------------------#'
        echo '|  Starting background worker: CMTracker   9    |'
        echo '#-----------------------------------------------#'
        echo
    
        nohup php /var/www/clients/client1/web18/web/api/cm_tracker9.php 2> /var/www/clients/client1/web18/web/api/logs/cm_tracker_9_error.log > /var/www/clients/client1/web18/web/api/logs/cm_tracker_9.log &
    fi
    Nun habe ich diese Seite hier gelesen
    http://www.unixboard.de/vb3/showthread.php?40411-Timeout-f%FCr-ein-Bash-Script

    Doch bin mir nicht sicher ob ich das so richtig einbauen kann ohne weitere probleme, mir Fehler ohne Kontrolle da reinzukloppen ist mir zu Riskant.
    Am einfachsten sieht einfach die Variable $timeout 1000s aus.
     
    Zuletzt bearbeitet: 11. Feb. 2014

Diese Seite empfehlen