Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Läuft mein OpenSim im screen oder nicht?
#1
Läuft mein OpenSim im screen oder nicht?
Ihr könnt das natürlich ganz einfach prüfen indem ihr screen -ls eingebt und in diese liste schaut.
Aber es geht auch anders mit shell Scripte.
ACHTUNG! Der Screenname ist hier der gleiche wie der Verzeichnisname. Bitte bei bedarf abändern.

Als erstes mal ein kleines Script was euch Optisch anzeigt ob der Screen gerade läuft oder nicht und euch einen Rückgabewert übergibt:
osxworks.sh
Code:
#!/bin/bash
cd /opt

sleep 1

# osxworks.sh screen_name
# Beispiel-Example: ./osxworks.sh sim1

if ! screen -list | grep -q "$1"; then
    # es laeuft nicht - not work
        echo "$(tput setaf 7)$(tput setab 1) $1 OFFLINE! $(tput sgr 0)"
        exit 1
    else
    # es laeuft - work
        echo "$(tput setaf 7)$(tput setab 2) $1 ONLINE! $(tput sgr 0)"
        exit 0
fi


Als zweites ein weiteres Script was das erste Script auswertet und euch das ganze anzeigt:

osworks.sh
Code:
#!/bin/bash
cd /opt

function auswertung
{
    # Die Auswertung
    if [ "$?" = 0 ] ;
    then
        echo "Rückgabewert Null, es läuft also"
    else
        echo "Rückgabewert Eins, es läuft nicht"
    fi
}

/opt/osxworks.sh RO
auswertung

/opt/osxworks.sh MO
auswertung

/opt/osxworks.sh sim1
auswertung

/opt/osxworks.sh sim2
auswertung

/opt/osxworks.sh sim3
auswertung

/opt/osxworks.sh sim4
auswertung

/opt/osxworks.sh sim5
auswertung

/opt/osxworks.sh sim6
auswertung

/opt/osxworks.sh sim7
auswertung

/opt/osxworks.sh sim8
auswertung

/opt/osxworks.sh sim9
auswertung

/opt/osxworks.sh sim10
auswertung

So könnt ihr kontrolieren ob screens laufen oder nicht und diese Starten, Stoppen oder Neustarten wie es euch beliebt.


Zur Vervollständigung noch die Start und Stopp Scripte:

osxstart.sh
Code:
#!/bin/bash
cd /opt

# osxstart.sh screen_name
# Beispiel-Example: ./osxstart.sh sim1

sleep 10

if [ -d $1 ]; then
  echo "$(tput setaf 4)OpenSim: $(tput setab 7)Regionen OpenSimulator $1 Starten$(tput sgr 0)"
  cd /opt/$1/bin
  screen -fa -S $1 -d -U -m mono OpenSim.exe
else
  echo "$(tput setaf 2)Nachfolgende screens wurden gestartet $(tput sgr 0)"
  screen -ls
   exit 1
fi

osxstop.sh
Code:
#!/bin/bash
cd /opt

# osxstop.sh screen_name
# Beispiel-Example: ./osxstop.sh sim1

sleep 10

if screen -list | grep -q $1; then
  echo "$(tput setaf 1)OpenSim: $(tput setab 7)Regionen OpenSimulator $1 Beenden$(tput sgr 0)"
  screen -S $1 -p 0 -X eval "stuff 'shutdown'^M"
else
  echo "$(tput setaf 1)OpenSim: $(tput setab 7)Regionen OpenSimulator $1 nicht vorhanden$(tput sgr 0)"
fi
- Beipackzettel: Kann Spuren von persönlichen Meinungen, Sarkasmus und Ironie enthalten.
Ausdrücke sind nicht für den Verkehr geeignet. Gelesen mindestens haltbar, siehe oben. -
[-] The following 2 users say Thank You to Manni for this post:
  • Achim (04-27-2021), Loru Destiny (04-29-2021)
Antworten


Nachrichten in diesem Thema
Läuft mein OpenSim im screen oder nicht? - von Manni - 04-27-2021, 11:26 AM

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste