Hallo!
Ich möchte meine Seite (nur Intranet) gerne Indexieren. Dazu habe ich PHP Scripts. Nun lasse ich jede Minute ein Cronjob laufen der die Dateien strip_index.bash, datei_version.bash und dateien_extract.bash aufruft. Der Cronjob lautet
* * * * * /home/verwalter/indexierung.bash
Die indexierung.bash ist Folgende:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | #!/bin/bash for((i=1; i<=59; i++)) do var1=`ps -e | grep "strip_index" | grep -v grep | wc -l` var2=`ps -e | grep "datei_version" | grep -v grep | wc -l` var3=`ps -e | grep "datei_extraxt" | grep -v grep | wc -l` if [ $var1 = 0 ]; then /bin/bash /home/verwalter/strip_index.bash & sleep 1 else sleep 1 fi if [ $var2 = 0 ]; then /bin/bash /home/verwalter/datei_version.bash & sleep 1 else sleep 1 fi if [ $var3 = 0 ]; then /bin/bash /home/verwalter/dateien_extract.bash & sleep 1 else sleep 1 fi done |
Dieses Script soll prüfen ob die gestarteten Scripte noch ausgeführt werden. Tut es aber nicht.
strip_index.bash
1 2 | #!/bin/bash /usr/bin/php /var/www/cronjob/strip_index.php & |
datei_version.bash
1 2 | #!/bin/bash /usr/bin/php /var/www/cronjob/datei_version.php & |
dateien_extract.bash
1 2 | #!/bin/bash /usr/bin/php /var/www/cronjob/dateien_extract.php & |
Ich möchte, dass die 3 Scripte praktisch immer Laufen. Aber indexierung.bash soll nicht 2 mal laufen und die 3 Scripte ein weiteres Mal starten.
Scheinbar startet er jeden for durchlauf die Scripte. Die kann ich komsicherweise mit ps -e nicht erkennen... Die werden nicht mit dem teilnamen aufgeführt.
Hat jemand eine Idee?
Vielen Dank für Eure Zeit und eure Bemühungen!