[Linux] Script lässt sich nicht starten :/

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • [Linux] Script lässt sich nicht starten :/

      Hallo Leute,

      hoffentlich kann mir jemand Helfen. Das Programm will nicht starten bzw. will nichtmal in die if abfrage kennt jemand eine Lösung?

      Linux erfahrung habe ich..

      Bitte einfach keinen spam.. -.-


      PHP-Quellcode

      1. #!/bin/bash
      2. if [ echo $Servh = 0 ]; then
      3. Servh=1
      4. export Servh
      5. screen -AmdS War-HighFive ./parameter
      6. echo "$Servh"
      7. echo "HighFive's Server wurde gestartet"
      8. fi
      9. if [ echo $Servh = 1 ]; then
      10. Serverh=0
      11. export Servh
      12. screen -wipe War-HighFive
      13. echo "$Servh"
      14. echo "HighFive's Server wurde nicht gestartet."
      15. fi
      Alles anzeigen
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • Ich habe dir hier mal ein Beispiel gemacht was für dich vielleicht passender ist.
      Eine Case Abfrage statt der If
      Ich hoffe du verstehst es, ansonsten Frag einfach

      PHP-Quellcode

      1. #!/bin/bash
      2. #Programm test.sh
      3. case "$1" in
      4. 0)
      5. echo "Es wurde die 0 angehaengt"
      6. ;;
      7. 1)
      8. echo "Es wurde die 1 angehaengt"
      9. ;;
      10. *)
      11. echo "Sorry dafür habe ich keine Definition"
      12. ;;
      13. esac
      Alles anzeigen


      Aufgerufen wird es über die Kommando Zeile mit ./datei.sh $1 wobei das $1 durch deinen Wert ersetzt wird den du haben willst.

      Gruß
      Ulle
    • ulle;268603 schrieb:

      Ich habe dir hier mal ein Beispiel gemacht was für dich vielleicht passender ist.
      Eine Case Abfrage statt der If
      Ich hoffe du verstehst es, ansonsten Frag einfach

      PHP-Quellcode

      1. #!/bin/bash
      2. #Programm test.sh
      3. case "$1" in
      4. 0)
      5. echo "Es wurde die 0 angehaengt"
      6. ;;
      7. 1)
      8. echo "Es wurde die 1 angehaengt"
      9. ;;
      10. *)
      11. echo "Sorry dafür habe ich keine Definition"
      12. ;;
      13. esac
      Alles anzeigen
      Aufgerufen wird es über die Kommando Zeile mit ./datei.sh $1 wobei das $1 durch deinen Wert ersetzt wird den du haben willst.

      Gruß
      Ulle


      Das Problem ist das die Case Abfrage Funktioniert, doch dieses Script soll in die Crontab ( wird alle 10 min ausgeführt ) um zu gucken ob der server noch online ist ich habe das problem mittlerweile eingegrenzt

      PHP-Quellcode

      1. #!/bin/bash
      2. Servh=' '
      3. pid=$ (find .-type -name \*.pid)
      4. echo $pid
      5. echo $Servh
      6. if $Servh -eq 0;
      7. then
      8. Servh=1
      9. screen -AmdS War-HighFive ./parameter
      10. echo "$Servh"
      11. echo "HighFive's Server wurde gestartet."
      12. else
      13. Servh=0
      14. screen -r War-HighFive -X quit
      15. echo "$Servh"
      16. echo "HighFive's Server wurde nicht gestartet"
      17. fi
      Alles anzeigen
      Der pid=$ (find .-type -name \) soll immer ausgeführt werden und das ergebnis indem fall ( *.pid ) in die variable pid abgelegt werden doch das klappt nicht denn ich kann besser vergleichen wenn ich 2 wörter habe und er soll dann halt später selbständig die pid file anlegen und auch wieder löschen.

      lg Ich


      EDIT:

      PHP-Quellcode

      1. #!/bin/bash
      2. if [ -f ./start.pid ];
      3. then
      4. screen -r War-HighFive -X quit
      5. echo " HighFive's Server wurde nicht gestartet. "
      6. rm -R ./start.pid
      7. else
      8. screen -AmdS War-HighFive ./parameter
      9. echo " HighFive's Server wurde gestartet. "
      10. touch ./start.pid
      11. fi
      Alles anzeigen


      Ich habe einfach die abfrage umgedreht wenn diese datei vorhanden ist dann soll er die löschen wenn nicht dann erstellen und den server starten immoment reicht es noch aus aber ich will noch eine funktion einbauen die beim start des servers ein script ausführt und die start.pid löscht bzw. den server einmal startet und wenn die crontab das script ausführt ( dieses ) dann soll der server nicht immer neu gestartet werden dh. ein script läuft auch immer mit und überprüft ob der server läuft wenn nicht checkt er ob die datei vorhanden ist wenn nicht dann löscht er den server sollte beides da sein dann macht er nichts.