Heute gibt es mal ein kleines Menü für die Shell um die 4 Optionen des TS3 Startscript komfortabel zu nutzen und schnell mal in die letzten Zeilen des Logfiles reinzusehen.
Normalerweise hat startet man den Server auf der Shell mit diesem Script:
$ ./ts3server_startscript.sh {start|stop|restart|status}
Die Logfiles lassen sich bequem via tail aufrufen:
$ tail logs/ts3server_2011-[...]-.log
Starten wir und erstellen im TS3 Verzeichnis die Datei ts-menu.mnu
$ vi ts-menu.mnu
In diese legen wir folgenden Inhalt:
#!/bin/sh
# ts-menue.mnu
# A simple TS3 menu script under Unix
# Autor blue-matrix
# Twitter: @bluematrix
showMenu (){
clear
echo -e "\t---------------------"
echo -e "\t| Teamspeak 3 |"
echo -e "\t---------------------"
echo -e "\t| Optionen: |"
echo -e "\t| 1 - TS3 Start |"
echo -e "\t| 2 - TS3 Stop |"
echo -e "\t| 3 - TS3 Restart |"
echo -e "\t| 4 - TS3 Status |"
echo -e "\t| 5 - TS3 Logs |"
echo -e "\t| |"
echo -e "\t| x - Exit |"
echo -e "\t---------------------"
}
choice1 (){ ./ts3server_startscript.sh start ; echo -e "\nPress Enter" ; read DUMMY ; }
choice2 (){ ./ts3server_startscript.sh stop ; echo -e "\nPress Enter" ; read DUMMY ; }
choice3 (){ ./ts3server_startscript.sh restart ; echo -e "\nPress Enter" ; read DUMMY ; }
choice4 (){ ./ts3server_startscript.sh status ; echo -e "\nPress Enter" ; read DUMMY ; }
choice5 (){
clear ; ls logs/ ;
echo -e "\nWelches Logfile soll angezeigt werden?" ;
read log ;
echo -e "\n" ;
tail logs/$log ;
echo -e "\nPress Enter" ;
read DUMMY ;
}
while true
do
showMenu
read answer
case $answer in
1) choice1;;
2) choice2;;
3) choice3;;
4) choice4;;
5) choice5;;
x) exit 1;;
*) echo Eingabe ungueltig ; echo "\nPress Enter" ; read DUMMY ;;
esac
done
Nach dem die Datei gespeichert wurde diese noch ausführbar machen:
$ chmode +x ts-menu.mnu
Das Menü wird dann aufgerufen mit:
$ ./ts-menu.mnu

TS3 Menü für die Shell
HINWEIS: Wenn beim Aufruf des Menüs am Zeilenanfang -e angezeigt wird kann im Script selbst die Option -e nach echo entfernt werden.