All pastes #904320 Raw Edit

Zeug

public shellscript v1 · immutable
·published 2008-02-14 21:21 UTC
rendered paste body
#! /bin/bashfunction alle {	servers="dust2 funcustom gr gungame hnf"		if [ "$2" = "j" ]; then		servers="$servers clan cl2n"	fi		for server in $servers; do		$0 $1 $server	done}case "$1" in	start)		echo "CSS Server '$2': Versuche zu starten..."				if [ "$2" = "alle" ]; then			alle "start" $3		else			if [ -z "`screen -list | cut -d '.' -f 2 | grep -w css_$2`" ]; then				optionen="+map de_dust2 +maxplayers 4 -tickrate 33 -port 28018"								if [ "$2" = "clan" ]; then optionen="+map de_dust2 +maxplayers 10 -port 50000 -tickrate 100"; fi				if [ "$2" = "cl2n" ]; then optionen="+map de_dust2 +maxplayers 10 -port 50001 -tickrate 100"; fi				if [ "$2" = "dust2" ]; then optionen="+map de_dust2 +maxplayers 16 -tickrate 100 -port 27016"; fi				if [ "$2" = "funcustom" ]; then optionen="+map aim_ag_texture +maxplayers 12 -tickrate 100 -port 40000"; fi				if [ "$2" = "gr" ]; then optionen="+map surf_greatriver_v4 +maxplayers 12 -port 4464 -tickrate 100"; fi				if [ "$2" = "gungame" ]; then optionen="+map gg_aim_ag_texture2 +maxplayers 14 -port 30000 -tickrate 100"; fi				if [ "$2" = "hnf" ]; then optionen="+map cs_office +maxplayers 10 -tickrate 100 -port 20000"; fi				if [ "$2" = "test" ]; then optionen="+map de_dust2 +maxplayers 4 -port 23456 -tickrate 33"; fi								if [ "$2" != "clan" -a "$2" != "cl2n" -a "$2" != "dust2" -a "$2" != "hnf" -a "$2" != "funcustom" -a "$2" != "gr" -a "$2" != "gungame" -a "$2" != "test" ]; then					echo "CSS Server '$2': Nicht gefunden!"				else					if [ -d "/home/server/$2" ]; then						echo "CSS Server '$2': Startparameter wurden geladen..."						echo "CSS Server '$2': Wird gestartet..."												cd "$2"						screen -A -m -d -S css_$2 ./srcds_run $optionen -autoupdate +ip 83.142.82.222												sleep 3												if [ -z "screen -list | grep '$2'" ]; then							echo "CSS Server '$2': Erfolgreich gestartet!"						else							echo "CSS Server '$2': Konnte nicht gestartet werden!"						fi												cd ../					else						echo "CSS Server '$2': Ordner nicht gefunden!"					fi				fi			else				echo "CSS Server '$2': Läuft bereits!"			fi		fi	;;	stop)		echo "CSS Server '$2': Versuche zu beenden..."				if [ "$2" = "alle" ]; then			alle "stop" $3		else			if [ -z "`screen -list | cut -d '.' -f 2 | grep -w css_$2`" ]; then				echo "CSS Server '$2': Wird beendet..."				screen -S css_$2 -X quit								sleep 3								if [ -z "`screen -list | cut -d '.' -f 2 | grep -w css_$2`" ]; then					echo "CSS Server '$2': Erfolgreich beendet!"				else					echo "CSS Server '$2': Konnte nicht beendet werden!"				fi			else				echo "CSS Server '$2': Läuft nicht!"			fi		fi	;;	restart)		echo "CSS Server '$2': Versuche zu restarten..."				if [ "$2" = "alle" ]; then			alle "stop" $3			alle "start" $3		else			$0 stop $2			$0 start $2		fi	;;	status)		echo "CSS Server '$2': Versuche Status zu bekommen..."				if [ "$2" = "alle" ]; then			alle "status" $3		else			if [ "$2" != "clan" -a "$2" != "cl2n" -a "$2" != "dust2" -a "$2" != "hnf" -a "$2" != "funcustom" -a "$2" != "gr" -a "$2" != "gungame" -a "$2" != "test" ]; then				echo "CSS Server '$2': Nicht gefunden!"			else				if [ ! -z "`screen -list | cut -d '.' -f 2 | grep -w css_$2`" ]; then					echo "CSS Server '$2': Am laufen!"				else					echo "CSS Server '$2': Nicht am laufen!"				fi			fi		fi	;;	update)		echo "CSS HauptServer: Versuche zu updaten..."				if [ -d "/home/server/css_setup" ]; then			echo "CSS HauptServer: Wird geupdated..."						cd "css_setup"			./steam -command update -game "Counter-Strike Source" -dir /home/server/css			cd ../						echo "CSS HauptServer: Erfolgreich geupdated!"		else			echo "CSS HauptServer: Ordner nicht gefunden!"		fi	;;	symlink)		echo "CSS Server '$2': Versuche Symlink zu updaten..."				if [ "$2" = "alle" ]; then			alle "symlink" $3		else			if [ "$2" != "clan" -a "$2" != "cl2n" -a "$2" != "dust2" -a "$2" != "hnf" -a "$2" != "funcustom" -a "$2" != "gr" -a "$2" != "gungame" -a "$2" != "test" ]; then				echo "CSS Server '$2': Nicht gefunden!"			else				if [ -d "/home/server/$2" ]; then					echo "CSS Server '$2': Symlink wird geupdated..."										cp -sR /home/server/css/* /home/server/$2 2>/dev/null										echo "CSS Server '$2': Symlink erfolgreich geupdated!"				else					echo "CSS Server '$2': Ordner nicht gefunden!"				fi			fi		fi	;;	ts)		if [ "$2" != "start" -a "$2" != "stop" -a "$2" != "restart" ]; then			echo "TS2 Server: Kommando nicht gefunden!"		else			echo "TS2 Server: Wird ausgeführt..."						cd /home/server/ts2/server			./script $2			cd ../../						echo "TS2 Server: Erfolgreich ausgeführt!"		fi	;;	perlmod)		if [ "$2" != "start" -a "$2" != "stop" -a "$2" != "restart" ]; then			echo "TS2 PerlMod: Kommando nicht gefunden!"		else			echo "TS2 PerlMod: Wird ausgeführt..."						cd /home/server/ts2/perlmod			./script $2			cd ../../						echo "TS2 PerlMod: Erfolgreich ausgeführt!"		fi	;;	webch)		cd /var/www		chmod -R 777 ./		cd /home/server	;;	*)		echo "CSS Server:       ./script (start|stop|restart|status|symlink) Name"		echo "CSS HauptServer:  ./script update"		echo "TS2 Server:       ./script ts (start|stop|restart)"		echo "TS2 PerlMod:      ./script perlmod (start|stop|restart)"		echo "Webserver CHMOd:  ./script webch"esacexit 0