From c7f07c56e2c5761e2bce500d68f7e40b28dfe365 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 30 Oct 2015 22:18:50 +0000 Subject: [PATCH 01/15] Revert "Removed the need for files to be created with column" This reverts commit 4a45f5d4bb159dd50a637f05f3b107359241e219. --- functions/fn_details | 116 ++++++++++++++++++++++++++++--------------- 1 file changed, 76 insertions(+), 40 deletions(-) diff --git a/functions/fn_details b/functions/fn_details index 845eafca4..a69830fa9 100644 --- a/functions/fn_details +++ b/functions/fn_details @@ -2,7 +2,7 @@ # LGSM fn_details function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 301015 +# Version: 281015 # Description: Displays server infomation. @@ -20,7 +20,9 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mHostname:\t\e[0m$HOSTNAME" echo -e "\e[34mtmux:\t\e[0m${tmuxv}" echo -e "\e[34mGLIBC:\t\e[0m${glibcv}" -} | column -s $'\t' -t +} >> .fn_details_distro +column -s $'\t' -t .fn_details_distro +rm -f .fn_details_distro } fn_details_performance(){ @@ -30,13 +32,17 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = { echo -e "\e[34mUptime:\t\e[0m${days}d, ${hours}h, ${minutes}m" echo -e "\e[34mAvg Load:\t\e[0m${load}" -} | column -s $'\t' -t +} >> .fn_details_performance +column -s $'\t' -t .fn_details_performance +rm -f .fn_details_performance echo -e "" { echo -e "\e[34mMem:\t\e[34mtotal\t used\t free\e[0m" echo -e "\e[34mPhysical:\t\e[0m${physmemtotal}\t${physmemused}\t${physmemfree}\e[0m" echo -e "\e[34mSwap:\t\e[0m${swaptotal}\t${swapused}\t${swapfree}\e[0m" -} | column -s $'\t' -t +} >> .fn_details_performance +column -s $'\t' -t .fn_details_performance +rm -f .fn_details_performance } fn_details_disk(){ @@ -52,7 +58,9 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = if [ -d "${backupdir}" ]; then echo -e "\e[34mBackups:\t\e[0m${backupdirdu}" fi -} | column -s $'\t' -t +} >> .fn_details_disk +column -s $'\t' -t .fn_details_disk +rm -f .fn_details_disk } fn_details_gameserver(){ @@ -124,7 +132,9 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = if [ -n "${dbplugin}" ]; then echo -e "\e[34mdbplugin:\t\e[0m${dbplugin}" fi -} | column -s $'\t' -t +} >> .fn_details_gameserver +column -s $'\t' -t .fn_details_gameserver +rm -f .fn_details_gameserver echo -e "" ## script details @@ -177,7 +187,9 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = if [ -n "${networkcfgfullpath}" ]; then echo -e "\e[34mNetwork config file:\t\e[0m${networkcfgfullpath}" fi -} | column -s $'\t' -t +} >> .fn_details_script +column -s $'\t' -t .fn_details_script +rm -f .fn_details_script } fn_details_backup(){ @@ -193,7 +205,9 @@ else echo -e "\e[34m date:\t\e[0m${lastbackupdate}" echo -e "\e[34m file:\t\e[0m${lastbackup}" echo -e "\e[34m size:\t\e[0m${lastbackupsize}" - } | column -s $'\t' -t + } >> .fn_details_backup + column -s $'\t' -t .fn_details_backup + rm -f .fn_details_backup fi } @@ -246,8 +260,9 @@ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game\tINBOUND\t${port}\tudp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -273,8 +288,9 @@ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game\tINBOUND\t${port}\tudp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -300,8 +316,9 @@ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game\tINBOUND\t${port}\tudp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -336,8 +353,9 @@ fi echo -e "> Game\tINBOUND\t${port}\tudp" echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp" echo -e "> Steam: Master traffic\tINBOUND\t${masterport}\tudp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -366,8 +384,9 @@ echo -e "" echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game/RCON\tINBOUND\t${port}\ttcp" echo -e "> Query\tINBOUND\t${queryport}\tudp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -398,8 +417,9 @@ echo -e "" echo -e "> SourceTV\tINBOUND\t${sourcetvport}\tudp" fi echo -e "< Client\tOUTBOUND\t${clientport}\tudp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -429,7 +449,9 @@ echo -e "" echo -e "> Game/RCON\tINBOUND\t${port}\tudp" echo -e "> Query\tINBOUND\t${queryport}\tudp" echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp" -} | column -s $'\t' -t +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports echo -e "" echo -e "\e[92m${servername} WebAdmin\e[0m" printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = @@ -437,8 +459,9 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mWebAdmin url:\t\e[0mhttp://${ip}:${webadminport}/index.html" echo -e "\e[34mWebAdmin username:\t\e[0m${webadminuser}" echo -e "\e[34mWebAdmin password:\t\e[0m${webadminpass}" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -467,8 +490,9 @@ echo -e "" echo -e "> Game\tINBOUND\t${port}\ttcp" echo -e "> Query\tINBOUND\t${queryport}\ttcp" echo -e "> Rcon\tINBOUND\t${rconport}\ttcp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -496,8 +520,9 @@ echo -e "" echo -e "> Voice\tINBOUND\t${port}\tudp" echo -e "> ServerQuery\tINBOUND\t${queryport}\ttcp" echo -e "> File transfer\tINBOUND\t${fileport}\ttcp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -524,8 +549,9 @@ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game\tINBOUND\t${port}\ttcp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -554,8 +580,9 @@ echo -e "" echo -e "> Game\tINBOUND\t${port}\ttcp" echo -e "> Query\tINBOUND\t${queryport}\ttcp" echo -e "> Rcon\tINBOUND\t${rconport}\ttcp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -586,7 +613,9 @@ echo -e "" echo -e "> Query\tINBOUND\t${queryport}\tudp" echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp" echo -e "> Telnet\tINBOUND\t${telnetport}\ttcp" -} | column -s $'\t' -t +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports echo -e "" echo -e "\e[92m${servername} WebAdmin\e[0m" printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = @@ -594,7 +623,9 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mWebAdmin enabled:\t\e[0m${webadminenabled}" echo -e "\e[34mWebAdmin url:\t\e[0mhttp://${ip}:${webadminport}" echo -e "\e[34mWebAdmin password:\t\e[0m${webadminpass}" -} | column -s $'\t' -t +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports echo -e "" echo -e "\e[92m${servername} Telnet\e[0m" printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = @@ -602,8 +633,9 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mTelnet enabled:\t\e[0m${telnetenabled}" echo -e "\e[34mTelnet address:\t\e[0m${ip} ${telnetport}" echo -e "\e[34mTelnet password:\t\e[0m${telnetpass}" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } @@ -651,7 +683,9 @@ echo -e "" fi fi echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp\tListenPort=${webadminport}" -} | column -s $'\t' -t +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports echo -e "" echo -e "\e[92m${servername} WebAdmin\e[0m" printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = @@ -660,8 +694,9 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mWebAdmin url:\t\e[0mhttp://${ip}:${webadminport}" echo -e "\e[34mWebAdmin username:\t\e[0m${webadminuser}" echo -e "\e[34mWebAdmin password:\t\e[0m${webadminpass}" -} | column -s $'\t' -t - +} >> .fn_details_webadmin +column -s $'\t' -t .fn_details_webadmin +rm -f .fn_details_webadmin fn_details_statusbottom } @@ -690,8 +725,9 @@ echo -e "" echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL\tINI VARIABLE" echo -e "> Game\tINBOUND\t${port}\tudp\tPort=${port}" echo -e "> Query\tINBOUND\t${queryport}\tudp" -} | column -s $'\t' -t - +} >> .fn_details_ports +column -s $'\t' -t .fn_details_ports +rm -f .fn_details_ports fn_details_statusbottom } From 3e5254000ab7abe3780075fc4e73564f25f0b1ba Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 30 Oct 2015 22:18:55 +0000 Subject: [PATCH 02/15] Revert "as per https://github.com/koalaman/shellcheck/wiki/SC2060" This reverts commit 1c84eff59edb5406ee4d0ccf0b086b2d0db8b32e. --- functions/fn_details | 2 +- functions/fn_details_config | 2 +- functions/fn_install_glibcfix | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/functions/fn_details b/functions/fn_details index a69830fa9..ea408876d 100644 --- a/functions/fn_details +++ b/functions/fn_details @@ -154,7 +154,7 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = # GLIBC required if [ -n "${glibcrequired}" ]; then - if [ "$(ldd --version | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" -lt "$(echo "${glibcrequired}" | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" ]; then + if [ "$(ldd --version | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" -lt "$(echo "${glibcrequired}" | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" ]; then if [ "${glibcfix}" == "yes" ]; then echo -e "\e[34mGLIBC required:\t\e[0;31m${glibcrequired} \e[0m(\e[0;32mUsing GLIBC fix\e[0m)" else diff --git a/functions/fn_details_config b/functions/fn_details_config index 815153f23..1a6119e7f 100644 --- a/functions/fn_details_config +++ b/functions/fn_details_config @@ -8,7 +8,7 @@ ## Examples of filtering to get info from config files # sed 's/foo//g' - remove foo -# tr -cd '[:digit:]' leave only digits +# tr -cd [:digit:] leave only digits # tr -d '=\"; ' remove selected charectors =\"; # grep -v "foo" filter out lines that contain foo diff --git a/functions/fn_install_glibcfix b/functions/fn_install_glibcfix index 18f1b0840..52868e908 100644 --- a/functions/fn_install_glibcfix +++ b/functions/fn_install_glibcfix @@ -2,7 +2,7 @@ # LGSM fn_install_glibcfix function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 301015 +# Version: 050715 fn_glibcfixmsg(){ echo "" @@ -48,7 +48,7 @@ if [ -z $(command -v ldd) ]; then esac done # if Glibc less than 1.15 -elif [ "$(ldd --version | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" -lt 215 ]; then +elif [ "$(ldd --version | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" -lt 215 ]; then # Blade Symphony if [ "${gamename}" == "Blade Symphony" ]; then glibcversion="2.15" @@ -110,7 +110,7 @@ elif [ "$(ldd --version | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" -lt 21 wget -nv -N https://github.com/dgibbs64/linuxgsm/raw/master/NoMoreRoomInHell/dependencies/libm.so.6 cp -v "${rootdir}/steamcmd/linux32/libstdc++.so.6" "${filesdir}/libstdc++.so.6" # if Glibc less than 1.13 - elif [ "$(ldd --version | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" -lt 213 ]; then + elif [ "$(ldd --version | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" -lt 213 ]; then # ARMA 3 if [ "${gamename}" == "ARMA 3" ]; then glibcversion="2.13" From c184fa3a068593495926b0643043f5ca01819823 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 30 Oct 2015 22:18:58 +0000 Subject: [PATCH 03/15] Revert "corrected NOT SET not displaying for server password" This reverts commit cc91ee4f750ef315e6e7d7d836ed61375019b3e8. --- functions/fn_details_config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions/fn_details_config b/functions/fn_details_config index 1a6119e7f..5f7fa48be 100644 --- a/functions/fn_details_config +++ b/functions/fn_details_config @@ -309,7 +309,7 @@ elif [ "${engine}" == "source" ] || [ "${engine}" == "goldsource" ]; then # server password if [ -f "${servercfgfullpath}" ]; then - serverpassword=$(grep "sv_password" "${servercfgfullpath}" | sed 's/sv_password //g' | sed 's/"//g') + serverpassword=$(grep "sv_password" "${servercfgfullpath}" | sed 's/sv_password//g' | sed 's/"//g') if [ ! -n "${serverpassword}" ]; then serverpassword="NOT SET" fi From 1c036c0d748ecf47045a9b83fa212962a8f59de1 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 30 Oct 2015 22:19:02 +0000 Subject: [PATCH 04/15] Revert "Altered as per https://github.com/koalaman/shellcheck/wiki/SC2060" This reverts commit 6a34713e1c195110ab189a8d914abaf2d3445ce9. --- functions/fn_details_config | 60 ++++++++++++++++++------------------- functions/fn_details_distro | 4 +-- functions/fn_install_ts3 | 4 +-- functions/fn_monitor_query | 8 ++--- functions/fn_start | 6 ++-- functions/fn_update_check | 8 ++--- 6 files changed, 45 insertions(+), 45 deletions(-) diff --git a/functions/fn_details_config b/functions/fn_details_config index 5f7fa48be..f8727f1f5 100644 --- a/functions/fn_details_config +++ b/functions/fn_details_config @@ -52,7 +52,7 @@ if [ "${engine}" == "avalanche" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "MaxPlayers" "${servercfgfullpath}" | tr -cd '[:digit:]') + slots=$(grep "MaxPlayers" "${servercfgfullpath}" | tr -cd "[:digit:]") if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -62,7 +62,7 @@ if [ "${engine}" == "avalanche" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "BindPort" "${servercfgfullpath}" | tr -cd '[:digit:]') + port=$(grep "BindPort" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -95,7 +95,7 @@ elif [ "${engine}" == "dontstarve" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "max_players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') + slots=$(grep "max_players" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -115,7 +115,7 @@ elif [ "${engine}" == "dontstarve" ]; then # tickrate if [ -f "${servercfgfullpath}" ]; then - tickrate=$(grep "tick_rate" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') + tickrate=$(grep "tick_rate" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") if [ ! -n "${tickrate}" ]; then tickrate="NOT SET" fi @@ -125,7 +125,7 @@ elif [ "${engine}" == "dontstarve" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "server_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') + port=$(grep "server_port" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -148,7 +148,7 @@ elif [ "${engine}" == "projectzomboid" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') + slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -158,7 +158,7 @@ elif [ "${engine}" == "projectzomboid" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "DefaultPort=" "${servercfgfullpath}" | tr -cd '[:digit:]') + port=$(grep "DefaultPort=" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -201,7 +201,7 @@ elif [ "${engine}" == "realvirtuality" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "maxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') + slots=$(grep "maxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -211,7 +211,7 @@ elif [ "${engine}" == "realvirtuality" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "serverport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]') + port=$(grep "serverport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -219,7 +219,7 @@ elif [ "${engine}" == "realvirtuality" ]; then # query port if [ -f "${servercfgfullpath}" ]; then - queryport=$(grep "steamqueryport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]') + queryport=$(grep "steamqueryport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd "[:digit:]") fi if [ ! -n "${queryport}" ]; then queryport="0" @@ -227,7 +227,7 @@ elif [ "${engine}" == "realvirtuality" ]; then # master port if [ -f "${servercfgfullpath}" ]; then - masterport=$(grep "steamport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]') + masterport=$(grep "steamport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd "[:digit:]") fi if [ ! -n "${masterport}" ]; then masterport="0" @@ -259,7 +259,7 @@ elif [ "${engine}" == "seriousengine35" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "gam_ctMaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') + slots=$(grep "gam_ctMaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -279,7 +279,7 @@ elif [ "${engine}" == "seriousengine35" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "prj_uwPort" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]') + port=$(grep "prj_uwPort" "${servercfgfullpath}" | tr -d '\r' | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -364,7 +364,7 @@ elif [ "${gamename}" == "Teamspeak 3" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "default_voice_port=" "${servercfgfullpath}" | tr -cd '[:digit:]') + port=$(grep "default_voice_port=" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="9987" @@ -372,7 +372,7 @@ elif [ "${gamename}" == "Teamspeak 3" ]; then # query port if [ -f "${servercfgfullpath}" ]; then - queryport=$(grep "query_port=" "${servercfgfullpath}" | tr -cd '[:digit:]') + queryport=$(grep "query_port=" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${queryport}" ]; then queryport="10011" @@ -380,7 +380,7 @@ elif [ "${gamename}" == "Teamspeak 3" ]; then # file port if [ -f "${servercfgfullpath}" ]; then - fileport=$(grep "filetransfer_port=" "${servercfgfullpath}" | tr -cd '[:digit:]') + fileport=$(grep "filetransfer_port=" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${fileport}" ]; then fileport="30033" @@ -422,7 +422,7 @@ elif [ "${engine}" == "teeworlds" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd '[:digit:]') + port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="8303" @@ -430,7 +430,7 @@ elif [ "${engine}" == "teeworlds" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "sv_max_clients" "${servercfgfullpath}" | tr -cd '[:digit:]') + slots=$(grep "sv_max_clients" "${servercfgfullpath}" | tr -cd "[:digit:]") if [ ! -n "${slots}" ]; then slots="12" fi @@ -444,7 +444,7 @@ elif [ "${engine}" == "terraria" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "port=" "${servercfgfullpath}" | tr -cd '[:digit:]') + port=$(grep "port=" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -484,7 +484,7 @@ elif [ "${engine}" == "unity3d" ]; then # webadmin port if [ -f "${servercfgfullpath}" ]; then - webadminport=$(grep "ControlPanelPort" "${servercfgfullpath}" | tr -cd '[:digit:]') + webadminport=$(grep "ControlPanelPort" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${webadminport}" ]; then webadminport="0" @@ -522,7 +522,7 @@ elif [ "${engine}" == "unity3d" ]; then # telnet port if [ -f "${servercfgfullpath}" ]; then - telnetport=$(grep "TelnetPort" "${servercfgfullpath}" | tr -cd '[:digit:]') + telnetport=$(grep "TelnetPort" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${telnetport}" ]; then telnetport="0" @@ -540,7 +540,7 @@ elif [ "${engine}" == "unity3d" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "ServerMaxPlayerCount" "${servercfgfullpath}" | tr -cd '[:digit:]') + slots=$(grep "ServerMaxPlayerCount" "${servercfgfullpath}" | tr -cd "[:digit:]") if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -570,7 +570,7 @@ elif [ "${engine}" == "unity3d" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd '[:digit:]') + port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -620,7 +620,7 @@ elif [ "${engine}" == "unreal" ] || [ "${engine}" == "unreal2" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "Port=" "${servercfgfullpath}" | grep -v "Master" | grep -v "LAN" | grep -v "Proxy" | grep -v "Listen" | tr -d '\r' | tr -cd '[:digit:]') + port=$(grep "Port=" "${servercfgfullpath}" | grep -v "Master" | grep -v "LAN" | grep -v "Proxy" | grep -v "Listen" | tr -d '\r' | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -636,7 +636,7 @@ elif [ "${engine}" == "unreal" ] || [ "${engine}" == "unreal2" ]; then # gamespy query port if [ -f "${servercfgfullpath}" ]; then - gsqueryport=$(grep "OldQueryPortNumber=" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]') + gsqueryport=$(grep "OldQueryPortNumber=" "${servercfgfullpath}" | tr -d '\r' | tr -cd "[:digit:]") fi if [ ! -n "${gsqueryport}" ]; then gsqueryport="0" @@ -662,7 +662,7 @@ elif [ "${engine}" == "unreal" ] || [ "${engine}" == "unreal2" ]; then # webadmin port if [ -f "${servercfgfullpath}" ]; then - webadminport=$(grep "ListenPort=" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]') + webadminport=$(grep "ListenPort=" "${servercfgfullpath}" | tr -d '\r' | tr -cd "[:digit:]") fi if [ ! -n "${webadminport}" ]; then webadminport="0" @@ -750,7 +750,7 @@ elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]') + slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd "[:digit:]") if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -760,7 +760,7 @@ elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "Port=" "${servercfgfullpath}" | grep -v "RCONPort=" | grep -v "QueryPort=" | tr -cd '[:digit:]') + port=$(grep "Port=" "${servercfgfullpath}" | grep -v "RCONPort=" | grep -v "QueryPort=" | tr -cd "[:digit:]") fi if [ ! -n "${port}" ]; then port="0" @@ -768,7 +768,7 @@ elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then # rcon port if [ -f "${servercfgfullpath}" ]; then - rconport=$(grep "RCONPort=" "${servercfgfullpath}" | tr -cd '[:digit:]') + rconport=$(grep "RCONPort=" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${rconport}" ]; then rconport="0" @@ -776,7 +776,7 @@ elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then # query port if [ -f "${servercfgfullpath}" ]; then - queryport=$(grep "QueryPort=" "${servercfgfullpath}" | tr -cd '[:digit:]') + queryport=$(grep "QueryPort=" "${servercfgfullpath}" | tr -cd "[:digit:]") fi if [ ! -n "${queryport}" ]; then queryport="0" diff --git a/functions/fn_details_distro b/functions/fn_details_distro index 11122d7f6..b438f012f 100644 --- a/functions/fn_details_distro +++ b/functions/fn_details_distro @@ -2,7 +2,7 @@ # LGSM fn_details_distro function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 301015 +# Version: 270515 # Description: Variables providing useful info on the Operating System such as disk and performace info. # Used for fn_details, fn_debug and fn_email. @@ -29,7 +29,7 @@ glibcv=$(ldd --version |grep ldd|awk '{print $NF}') # e.g: tmux 1.6 if [ -z "$(command -v tmux)" ]; then tmuxv="\e[0;31mNOT INSTALLED!\e[0m" -elif [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd '[:digit:])' -lt "16" ]; then +elif [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd [:digit:])" -lt "16" ]; then tmuxv="$(tmux -V) (>= 1.6 required for console log)" else tmuxv=$(tmux -V) diff --git a/functions/fn_install_ts3 b/functions/fn_install_ts3 index 78246c0cf..67c6d5c9d 100644 --- a/functions/fn_install_ts3 +++ b/functions/fn_install_ts3 @@ -2,7 +2,7 @@ # LGSM fn_install_ts3 function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 301015 +# Version: 270715 fn_details_distro # Gets the teamspeak server architecture @@ -19,7 +19,7 @@ fi wget "http://dl.4players.de/ts/releases/?C=M;O=D" -q -O -| grep -i dir | egrep -o '.*\/<\/a>' | egrep -o '[0-9\.?]+'|uniq > .ts3_version_numbers_unsorted.tmp # removes digits to allow sorting of numbers -cat .ts3_version_numbers_unsorted.tmp |tr -cd '[:digit:][*\n]' > .ts3_version_numbers_digit.tmp +cat .ts3_version_numbers_unsorted.tmp |tr -cd "[:digit:][*\n]" > .ts3_version_numbers_digit.tmp # Sorts numbers in to correct order # merges two files in to one with two columns sorts the numbers in to order then only outputs the second to the ts3_version_numbers.tmp paste .ts3_version_numbers_digit.tmp .ts3_version_numbers_unsorted.tmp |sort -rn|awk '{ print $2 }' > .ts3_version_numbers.tmp diff --git a/functions/fn_monitor_query b/functions/fn_monitor_query index 0b575bb42..e58387cc8 100644 --- a/functions/fn_monitor_query +++ b/functions/fn_monitor_query @@ -2,7 +2,7 @@ # LGSM fn_monitor_query function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 301015 +# Version: 030715 # Description: uses gsquery.py to directly query the server. # Detects if the server has frozen. @@ -10,15 +10,15 @@ local modulename="Monitor" if [ -f "${rootdir}/gsquery.py" ]; then if [ "${engine}" == "unreal" ]||[ "${engine}" == "unreal2" ]; then - gameport=$(grep Port= "${servercfgfullpath}"|grep -v Master|grep -v LAN|grep -v Proxy|grep -v Listen|tr -d '\r'|tr -cd '[:digit:]') + gameport=$(grep Port= "${servercfgfullpath}"|grep -v Master|grep -v LAN|grep -v Proxy|grep -v Listen|tr -d '\r'|tr -cd [:digit:]) port=$((${gameport} + 1)) elif [ "${engine}" == "spark" ]; then port=$((${port} + 1)) elif [ "${engine}" == "realvirtuality" ]; then - queryport=$(grep -s steamqueryport= "${servercfgfullpath}"|grep -v //|tr -d '\r'|tr -cd '[:digit:]') + queryport=$(grep -s steamqueryport= "${servercfgfullpath}"|grep -v //|tr -d '\r'|tr -cd [:digit:]) port=${queryport} elif [ "${engine}" == "unity3d" ]; then - gameport=$(grep ServerPort "${servercfgfullpath}"|tr -cd '[:digit:]') + gameport=$(grep ServerPort "${servercfgfullpath}"|tr -cd [:digit:]) port=$((${gameport} + 1)) fi fn_printinfo "Detected gsquery.py" diff --git a/functions/fn_start b/functions/fn_start index 66d9ae355..8bb90da71 100644 --- a/functions/fn_start +++ b/functions/fn_start @@ -2,7 +2,7 @@ # LGSM fn_start function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 301015 +# Version: 291015 # Description: Starts the server. @@ -126,11 +126,11 @@ date > "${rootdir}/${lockselfname}" cd "${executabledir}" tmux new-session -d -s "${servicename}" "${executable} ${parms}" 2> "${scriptlogdir}/.${servicename}-tmux-error.tmp" # tmux pipe-pane not supported in tmux versions < 1.6 -if [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd '[:digit:]')" -lt "16" ]; then +if [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd [:digit:])" -lt "16" ]; then echo "Console logging disabled: Tmux => 1.6 required" >> "${consolelog}" echo "http://gameservermanagers.com/tmux-upgrade" >> "${consolelog}" echo "Currently installed: $(tmux -V)" >> "${consolelog}" -elif [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd '[:digit:]')" -eq "18" ]; then +elif [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd [:digit:])" -eq "18" ]; then echo "Console logging disabled: Bug in tmux 1.8 breaks logging" >> "${consolelog}" echo "http://gameservermanagers.com/tmux-upgrade" >> "${consolelog}" echo "Currently installed: $(tmux -V)" >> "${consolelog}" diff --git a/functions/fn_update_check b/functions/fn_update_check index f41203b50..9f289fe29 100644 --- a/functions/fn_update_check +++ b/functions/fn_update_check @@ -2,7 +2,7 @@ # LGSM fn_update_check function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 301015 +# Version: 281015 # Description: Checks if a server update is available. @@ -219,7 +219,7 @@ ts3arch=$(ls $(find ${filesdir}/ -name 'ts3server_*_*' 2> /dev/null | grep -v 't wget "http://dl.4players.de/ts/releases/?C=M;O=D" -q -O -| grep -i dir | egrep -o '.*\/<\/a>' | egrep -o '[0-9\.?]+'|uniq > .ts3_version_numbers_unsorted.tmp # removes digits to allow sorting of numbers -cat .ts3_version_numbers_unsorted.tmp |tr -cd '[:digit:][*\n]' > .ts3_version_numbers_digit.tmp +cat .ts3_version_numbers_unsorted.tmp |tr -cd "[:digit:][*\n]" > .ts3_version_numbers_digit.tmp # Sorts numbers in to correct order # merges two files in to one with two columns sorts the numbers in to order then only outputs the second to the ts3_version_numbers.tmp paste .ts3_version_numbers_digit.tmp .ts3_version_numbers_unsorted.tmp |sort -rn|awk '{ print $2 }' > .ts3_version_numbers.tmp @@ -253,8 +253,8 @@ else fi # Removes dots so if can compare version numbers -currentbuilddigit=$(echo "${currentbuild}"|tr -cd '[:digit:]') -availablebuilddigit=$(echo "${availablebuild}"|tr -cd '[:digit:]') +currentbuilddigit=$(echo "${currentbuild}"|tr -cd "[:digit:]") +availablebuilddigit=$(echo "${availablebuild}"|tr -cd "[:digit:]") if [ "${currentbuilddigit}" -ne "${availablebuilddigit}" ]; then echo -e "\n" echo -e "Update available:" From 6bc5d75e78490f94cad4043edc7f9e949cdd76f3 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 30 Oct 2015 22:30:53 +0000 Subject: [PATCH 05/15] Added menu concept back in --- functions/fn_getopt | 68 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/functions/fn_getopt b/functions/fn_getopt index 1b9b281d4..aba034efe 100644 --- a/functions/fn_getopt +++ b/functions/fn_getopt @@ -113,6 +113,74 @@ esac exit } +fn_getopt_gmodserver(){ +case "$getopt" in + start) + fn_start;; + stop) + fn_stop;; + restart) + fn_restart;; + update) + fn_update_check;; + force-update|update-restart) + forceupdate=1; + fn_update_check;; + update-functions|updatefunctions) + fn_update_functions;; + validate) + fn_validate;; + monitor) + fn_monitor;; + email-test|emailtest) + fn_email_test;; + details) + fn_details;; + backup) + fn_backup;; + console) + fn_console;; + debug) + fn_debug;; + install) + fn_install;; + auto-install|autoinstall) + fn_autoinstall;; + content) +echo + fn_content_gmod;; + depsdetect) + fn_deps_detect;; + *) + echo "Usage: $0 [option] + +${gamename} - Linux Game Server Manager - Version ${version} +http://gameservermanagers.com/${selfname}" +echo -e "" +echo -e "\e[93mCommands\e[0m" + +{ + echo -e "\e[34mstart\t\e[0mStart the server." + echo -e "\e[34mstop\t\e[0mStop the server." + echo -e "\e[34mrestart\t\e[0mRestart the server." + echo -e "\e[34mupdate\t\e[0mChecks and applies updates from SteamCMD." + echo -e "\e[34mforce-update\t\e[0mBypasses the check and applies updates from SteamCMD." + echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." + echo -e "\e[34mvalidate\t\e[0mValidate server files with SteamCMD." + echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." + echo -e "\e[34mdetails\t\e[0mDisplays useful infomation about the server." + echo -e "\e[34mbackup\t\e[0mCreate archive of the server." + echo -e "\e[34mconsole\t\e[0mConsole allows you to access the live view of a server." + echo -e "\e[34mdebug\t\e[0mSee the output of the server directly to your terminal." + echo -e "\e[34minstall\t\e[0mInstall the server." + echo -e "\e[34mauto-install\t\e[0mInstall the server, without prompts." + echo -e "\e[34mgmod-content\t\e[0mDownload gmod add-on content." + +} | column -s $'\t' -t +esac +exit +} + fn_getopt_unreal(){ case "$getopt" in start) From 3773818f2cbd762cba51e8827328f040b75649d3 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 30 Oct 2015 22:31:13 +0000 Subject: [PATCH 06/15] date --- functions/fn_getopt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions/fn_getopt b/functions/fn_getopt index aba034efe..56d3507f5 100644 --- a/functions/fn_getopt +++ b/functions/fn_getopt @@ -2,7 +2,7 @@ # LGSM fn_getopt function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 200615 +# Version: 301015 # Description: getopt arguments. From 4a151c3d17bafd9958b8dbad348d379ff1baebbe Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:28:37 +0000 Subject: [PATCH 07/15] added updated options messages Updated all options messages and added short switches for my convenience --- functions/fn_getopt | 406 +++++++++++++++++++++++++++----------------- 1 file changed, 251 insertions(+), 155 deletions(-) diff --git a/functions/fn_getopt b/functions/fn_getopt index 56d3507f5..20007fcd1 100644 --- a/functions/fn_getopt +++ b/functions/fn_getopt @@ -2,301 +2,397 @@ # LGSM fn_getopt function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 301015 +# Version: 011115 # Description: getopt arguments. fn_getopt_generic(){ case "$getopt" in - start) + st|start) fn_start;; - stop) + sp|stop) fn_stop;; - restart) + r|restart) fn_restart;; - update) + u|update) fn_update_check;; - force-update) + fu|force-update|update-restart) forceupdate=1; fn_update_check;; - update-restart) - forceupdate=1; - fn_update_check;; - update-functions) + uf|update-functions) fn_update_functions;; - validate) + v|validate) fn_validate;; - monitor) + m|monitor) fn_monitor;; - email-test) + et|email-test) fn_email_test;; - details) + d|details) fn_details;; - backup) + b|backup) fn_backup;; - console) + c|console) fn_console;; - debug) + d|debug) fn_debug;; - install) + i|install) fn_install;; - auto-install) + ai|auto-install) fn_autoinstall;; - depsdetect) - fn_deps_detect;; + dd|depsdetect) + fn_deps_detect;; *) - echo "Usage: $0 {start|stop|restart|update|force-update|update-functions|validate|monitor|email-test|details|backup|console|debug|install|auto-install}" - exit 1;; -esac + echo "Usage: $0 [option]" + echo "${gamename} - Linux Game Server Manager - Version ${version}" + echo "http://gameservermanagers.com/${selfname}" + echo -e "" + echo -e "\e[93mCommands\e[0m" + { + echo -e "\e[34mstart\t\e[0mStart the server." + echo -e "\e[34mstop\t\e[0mStop the server." + echo -e "\e[34mrestart\t\e[0mRestart the server." + echo -e "\e[34mupdate\t\e[0mChecks and applies updates from SteamCMD." + echo -e "\e[34mforce-update\t\e[0mBypasses the check and applies updates from SteamCMD." + echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." + echo -e "\e[34mvalidate\t\e[0mValidate server files with SteamCMD." + echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." + echo -e "\e[34memail-test\t\e[0mSends test monitor email." + echo -e "\e[34mdetails\t\e[0mDisplays useful infomation about the server." + echo -e "\e[34mbackup\t\e[0mCreate archive of the server." + echo -e "\e[34mconsole\t\e[0mConsole allows you to access the live view of a server." + echo -e "\e[34mdebug\t\e[0mSee the output of the server directly to your terminal." + echo -e "\e[34minstall\t\e[0mInstall the server." + echo -e "\e[34mauto-install\t\e[0mInstall the server, without prompts." + } | column -s $'\t' -t + esac exit } fn_getopt_teamspeak3(){ case "$getopt" in - start) + st|start) fn_start;; - stop) + sp|stop) fn_stop;; - restart) + r|restart) fn_restart;; - update) + u|update) fn_update_check;; - update-functions) + uf|update-functions) fn_update_functions;; - monitor) + m|monitor) fn_monitor;; - email-test) + et|email-test) fn_email_test;; - details) + d|details) fn_details;; - backup) + b|backup) fn_backup;; - install) + i|install) fn_install;; - auto-install) + ai|auto-install) fn_autoinstall;; - depsdetect) - fn_deps_detect;; + dd|depsdetect) + fn_deps_detect;; *) - echo "Usage: $0 {start|stop|restart|update|update-functions|monitor|email-test|details|backup|install|auto-install}" - exit 1;; -esac + echo "Usage: $0 [option]" + echo "${gamename} - Linux Game Server Manager - Version ${version}" + echo "http://gameservermanagers.com/${selfname}" + echo -e "" + echo -e "\e[93mCommands\e[0m" + { + echo -e "\e[34mstart\t\e[0mStart the server." + echo -e "\e[34mstop\t\e[0mStop the server." + echo -e "\e[34mrestart\t\e[0mRestart the server." + echo -e "\e[34mupdate\t\e[0mChecks and applies updates from teamspeak.com." + echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." + echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." + echo -e "\e[34memail-test\t\e[0mSends test monitor email." + echo -e "\e[34mdetails\t\e[0mDisplays useful infomation about the server." + echo -e "\e[34mbackup\t\e[0mCreate archive of the server." + echo -e "\e[34minstall\t\e[0mInstall the server." + echo -e "\e[34mauto-install\t\e[0mInstall the server, without prompts." + } | column -s $'\t' -t + esac exit } fn_getopt_mumble(){ case "$getopt" in - start) + st|start) fn_start;; - stop) + sp|stop) fn_stop;; - restart) + r|restart) fn_restart;; - update-functions) + uf|update-functions) fn_update_functions;; - monitor) + m|monitor) fn_monitor;; - email-test) + et|email-test) fn_email_test;; - backup) + b|backup) fn_backup;; console) fn_console;; - debug) + d|debug) fn_debug;; - depsdetect) - fn_deps_detect;; + dd|depsdetect) + fn_deps_detect;; *) - echo "Usage: $0 {start|stop|restart|update-functions|monitor|email-test|backup|console|debug}" - exit 1;; -esac + echo "Usage: $0 [option]" + echo "${gamename} - Linux Game Server Manager - Version ${version}" + echo "http://gameservermanagers.com/${selfname}" + echo -e "" + echo -e "\e[93mCommands\e[0m" + { + echo -e "\e[34mstart\t\e[0mStart the server." + echo -e "\e[34mstop\t\e[0mStop the server." + echo -e "\e[34mrestart\t\e[0mRestart the server." + echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." + echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." + echo -e "\e[34memail-test\t\e[0mSends test monitor email." + echo -e "\e[34mbackup\t\e[0mCreate archive of the server." + echo -e "\e[34mconsole\t\e[0mConsole allows you to access the live view of a server." + echo -e "\e[34mdebug\t\e[0mSee the output of the server directly to your terminal." + } | column -s $'\t' -t + esac exit } fn_getopt_gmodserver(){ case "$getopt" in - start) + st|start) fn_start;; - stop) + sp|stop) fn_stop;; - restart) + r|restart) fn_restart;; - update) + u|update) fn_update_check;; - force-update|update-restart) + fu|force-update|update-restart) forceupdate=1; fn_update_check;; - update-functions|updatefunctions) + uf|update-functions) fn_update_functions;; - validate) + v|validate) fn_validate;; - monitor) + m|monitor) fn_monitor;; - email-test|emailtest) + et|email-test) fn_email_test;; - details) + d|details) fn_details;; - backup) + b|backup) fn_backup;; - console) + c|console) fn_console;; - debug) + d|debug) fn_debug;; - install) + i|install) fn_install;; - auto-install|autoinstall) + ai|auto-install) fn_autoinstall;; - content) -echo + dd|depsdetect) + fn_deps_detect;; + gc|gmod-content) fn_content_gmod;; - depsdetect) - fn_deps_detect;; *) - echo "Usage: $0 [option] - -${gamename} - Linux Game Server Manager - Version ${version} -http://gameservermanagers.com/${selfname}" -echo -e "" -echo -e "\e[93mCommands\e[0m" - -{ - echo -e "\e[34mstart\t\e[0mStart the server." - echo -e "\e[34mstop\t\e[0mStop the server." - echo -e "\e[34mrestart\t\e[0mRestart the server." - echo -e "\e[34mupdate\t\e[0mChecks and applies updates from SteamCMD." - echo -e "\e[34mforce-update\t\e[0mBypasses the check and applies updates from SteamCMD." - echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." - echo -e "\e[34mvalidate\t\e[0mValidate server files with SteamCMD." - echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." - echo -e "\e[34mdetails\t\e[0mDisplays useful infomation about the server." - echo -e "\e[34mbackup\t\e[0mCreate archive of the server." - echo -e "\e[34mconsole\t\e[0mConsole allows you to access the live view of a server." - echo -e "\e[34mdebug\t\e[0mSee the output of the server directly to your terminal." - echo -e "\e[34minstall\t\e[0mInstall the server." - echo -e "\e[34mauto-install\t\e[0mInstall the server, without prompts." - echo -e "\e[34mgmod-content\t\e[0mDownload gmod add-on content." - -} | column -s $'\t' -t -esac + echo "Usage: $0 [option]" + echo "${gamename} - Linux Game Server Manager - Version ${version}" + echo "http://gameservermanagers.com/${selfname}" + echo -e "" + echo -e "\e[93mCommands\e[0m" + { + echo -e "\e[34mstart\t\e[0mStart the server." + echo -e "\e[34mstop\t\e[0mStop the server." + echo -e "\e[34mrestart\t\e[0mRestart the server." + echo -e "\e[34mupdate\t\e[0mChecks and applies updates from SteamCMD." + echo -e "\e[34mforce-update\t\e[0mBypasses the check and applies updates from SteamCMD." + echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." + echo -e "\e[34mvalidate\t\e[0mValidate server files with SteamCMD." + echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." + echo -e "\e[34memail-test\t\e[0mSends test monitor email." + echo -e "\e[34mdetails\t\e[0mDisplays useful infomation about the server." + echo -e "\e[34mbackup\t\e[0mCreate archive of the server." + echo -e "\e[34mconsole\t\e[0mConsole allows you to access the live view of a server." + echo -e "\e[34mdebug\t\e[0mSee the output of the server directly to your terminal." + echo -e "\e[34minstall\t\e[0mInstall the server." + echo -e "\e[34mauto-install\t\e[0mInstall the server, without prompts." + echo -e "\e[34mgmod-content\t\e[0mDownload gmod add-on content." + } | column -s $'\t' -t + esac exit } fn_getopt_unreal(){ case "$getopt" in - start) + st|start) fn_start;; - stop) + sp|stop) fn_stop;; - restart) + r|restart) fn_restart;; - update-functions) + uf|update-functions) fn_update_functions;; - monitor) + m|monitor) fn_monitor;; - email-test) + et|email-test) fn_email_test;; - details) + d|details) fn_details;; - backup) + b|backup) fn_backup;; - console) + c|console) fn_console;; - debug) + d|debug) fn_debug;; - install) + i|install) fn_install;; - map-compressor) + mc|map-compressor) fn_compress_ut99maps;; - depsdetect) + dd|depsdetect) fn_deps_detect;; *) - echo "Usage: $0 {start|stop|restart|update-functions|monitor|email-test|details|backup|console|debug|install|map-compressor}" - exit 1;; -esac + echo "Usage: $0 [option]" + echo "${gamename} - Linux Game Server Manager - Version ${version}" + echo "http://gameservermanagers.com/${selfname}" + echo -e "" + echo -e "\e[93mCommands\e[0m" + { + echo -e "\e[34mstart\t\e[0mStart the server." + echo -e "\e[34mstop\t\e[0mStop the server." + echo -e "\e[34mrestart\t\e[0mRestart the server." + echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." + echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." + echo -e "\e[34memail-test\t\e[0mSends test monitor email." + echo -e "\e[34mdetails\t\e[0mDisplays useful infomation about the server." + echo -e "\e[34mbackup\t\e[0mCreate archive of the server." + echo -e "\e[34mconsole\t\e[0mConsole allows you to access the live view of a server." + echo -e "\e[34mdebug\t\e[0mSee the output of the server directly to your terminal." + echo -e "\e[34minstall\t\e[0mInstall the server." + echo -e "\e[34mmap-compressor\t\e[0mCompresses all ${gamename} server maps." + } | column -s $'\t' -t + esac exit } fn_getopt_unreal2(){ case "$getopt" in - start) + st|start) fn_start;; - stop) + sp|stop) fn_stop;; - restart) + r|restart) fn_restart;; - update) + u|update) fn_update_check;; - force-update) + fu|force-update|update-restart) forceupdate=1; fn_update_check;; - update-restart) - forceupdate=1; - fn_update_check;; - update-functions) + uf|update-functions) fn_update_functions;; - validate) + v|validate) fn_validate;; - monitor) + m|monitor) fn_monitor;; - email-test) + et|email-test) fn_email_test;; - details) + d|details) fn_details;; - backup) + b|backup) fn_backup;; - console) + c|console) fn_console;; - debug) + d|debug) fn_debug;; - install) + i|install) fn_install;; - auto-install) + ai|auto-install) fn_autoinstall;; - map-compressor) + dd|depsdetect) + fn_deps_detect;; + mc|map-compressor) fn_compress_unreal2maps;; - depsdetect) - fn_deps_detect;; *) - echo "Usage: $0 {start|stop|restart|update|update-functions|validate|monitor|email-test|details|backup|console|debug|install|auto-install|map-compressor}" - exit 1;; -esac + echo "Usage: $0 [option]" + echo "${gamename} - Linux Game Server Manager - Version ${version}" + echo "http://gameservermanagers.com/${selfname}" + echo -e "" + echo -e "\e[93mCommands\e[0m" + { + echo -e "\e[34mstart\t\e[0mStart the server." + echo -e "\e[34mstop\t\e[0mStop the server." + echo -e "\e[34mrestart\t\e[0mRestart the server." + echo -e "\e[34mupdate\t\e[0mChecks and applies updates from SteamCMD." + echo -e "\e[34mforce-update\t\e[0mBypasses the check and applies updates from SteamCMD." + echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." + echo -e "\e[34mvalidate\t\e[0mValidate server files with SteamCMD." + echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." + echo -e "\e[34memail-test\t\e[0mSends test monitor email." + echo -e "\e[34mdetails\t\e[0mDisplays useful infomation about the server." + echo -e "\e[34mbackup\t\e[0mCreate archive of the server." + echo -e "\e[34mconsole\t\e[0mConsole allows you to access the live view of a server." + echo -e "\e[34mdebug\t\e[0mSee the output of the server directly to your terminal." + echo -e "\e[34minstall\t\e[0mInstall the server." + echo -e "\e[34mauto-install\t\e[0mInstall the server, without prompts." + echo -e "\e[34mmap-compressor\t\e[0mCompresses all ${gamename} server maps." + } | column -s $'\t' -t + esac exit } fn_getopt_ut2k4(){ case "$getopt" in - start) + st|start) fn_start;; - stop) + sp|stop) fn_stop;; - restart) + r|restart) fn_restart;; - update-functions) + uf|update-functions) fn_update_functions;; - monitor) + m|monitor) fn_monitor;; - email-test) + et|email-test) fn_email_test;; - details) + d|details) fn_details;; - backup) + b|backup) fn_backup;; - console) + c|console) fn_console;; - debug) + d|debug) fn_debug;; - install) + i|install) fn_install;; - map-compressor) - fn_compress_unreal2maps;; - depsdetect) + mc|map-compressor) + fn_compress_ut99maps;; + dd|depsdetect) fn_deps_detect;; *) - echo "Usage: $0 {start|stop|restart|update-functions|monitor|email-test|details|backup|console|debug|install|map-compressor}" - exit 1;; -esac + echo "Usage: $0 [option]" + echo "${gamename} - Linux Game Server Manager - Version ${version}" + echo "http://gameservermanagers.com/${selfname}" + echo -e "" + echo -e "\e[93mCommands\e[0m" + { + echo -e "\e[34mstart\t\e[0mStart the server." + echo -e "\e[34mstop\t\e[0mStop the server." + echo -e "\e[34mrestart\t\e[0mRestart the server." + echo -e "\e[34mupdate-functions\t\e[0mRemoves all functions so latest can be downloaded." + echo -e "\e[34mmonitor\t\e[0mChecks that the server is running." + echo -e "\e[34memail-test\t\e[0mSends test monitor email." + echo -e "\e[34mdetails\t\e[0mDisplays useful infomation about the server." + echo -e "\e[34mbackup\t\e[0mCreate archive of the server." + echo -e "\e[34mconsole\t\e[0mConsole allows you to access the live view of a server." + echo -e "\e[34mdebug\t\e[0mSee the output of the server directly to your terminal." + echo -e "\e[34minstall\t\e[0mInstall the server." + echo -e "\e[34mmap-compressor\t\e[0mCompresses all ${gamename} server maps." + } | column -s $'\t' -t + esac exit } From d84e5e48100b7cbac44687f4939a0490e14c947d Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:40:06 +0000 Subject: [PATCH 08/15] Newer version put back in to branch --- functions/fn_details | 118 +++++++++++++++---------------------------- 1 file changed, 41 insertions(+), 77 deletions(-) diff --git a/functions/fn_details b/functions/fn_details index ea408876d..845eafca4 100644 --- a/functions/fn_details +++ b/functions/fn_details @@ -2,7 +2,7 @@ # LGSM fn_details function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 281015 +# Version: 301015 # Description: Displays server infomation. @@ -20,9 +20,7 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mHostname:\t\e[0m$HOSTNAME" echo -e "\e[34mtmux:\t\e[0m${tmuxv}" echo -e "\e[34mGLIBC:\t\e[0m${glibcv}" -} >> .fn_details_distro -column -s $'\t' -t .fn_details_distro -rm -f .fn_details_distro +} | column -s $'\t' -t } fn_details_performance(){ @@ -32,17 +30,13 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = { echo -e "\e[34mUptime:\t\e[0m${days}d, ${hours}h, ${minutes}m" echo -e "\e[34mAvg Load:\t\e[0m${load}" -} >> .fn_details_performance -column -s $'\t' -t .fn_details_performance -rm -f .fn_details_performance +} | column -s $'\t' -t echo -e "" { echo -e "\e[34mMem:\t\e[34mtotal\t used\t free\e[0m" echo -e "\e[34mPhysical:\t\e[0m${physmemtotal}\t${physmemused}\t${physmemfree}\e[0m" echo -e "\e[34mSwap:\t\e[0m${swaptotal}\t${swapused}\t${swapfree}\e[0m" -} >> .fn_details_performance -column -s $'\t' -t .fn_details_performance -rm -f .fn_details_performance +} | column -s $'\t' -t } fn_details_disk(){ @@ -58,9 +52,7 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = if [ -d "${backupdir}" ]; then echo -e "\e[34mBackups:\t\e[0m${backupdirdu}" fi -} >> .fn_details_disk -column -s $'\t' -t .fn_details_disk -rm -f .fn_details_disk +} | column -s $'\t' -t } fn_details_gameserver(){ @@ -132,9 +124,7 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = if [ -n "${dbplugin}" ]; then echo -e "\e[34mdbplugin:\t\e[0m${dbplugin}" fi -} >> .fn_details_gameserver -column -s $'\t' -t .fn_details_gameserver -rm -f .fn_details_gameserver +} | column -s $'\t' -t echo -e "" ## script details @@ -154,7 +144,7 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = # GLIBC required if [ -n "${glibcrequired}" ]; then - if [ "$(ldd --version | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" -lt "$(echo "${glibcrequired}" | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" ]; then + if [ "$(ldd --version | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" -lt "$(echo "${glibcrequired}" | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" ]; then if [ "${glibcfix}" == "yes" ]; then echo -e "\e[34mGLIBC required:\t\e[0;31m${glibcrequired} \e[0m(\e[0;32mUsing GLIBC fix\e[0m)" else @@ -187,9 +177,7 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = if [ -n "${networkcfgfullpath}" ]; then echo -e "\e[34mNetwork config file:\t\e[0m${networkcfgfullpath}" fi -} >> .fn_details_script -column -s $'\t' -t .fn_details_script -rm -f .fn_details_script +} | column -s $'\t' -t } fn_details_backup(){ @@ -205,9 +193,7 @@ else echo -e "\e[34m date:\t\e[0m${lastbackupdate}" echo -e "\e[34m file:\t\e[0m${lastbackup}" echo -e "\e[34m size:\t\e[0m${lastbackupsize}" - } >> .fn_details_backup - column -s $'\t' -t .fn_details_backup - rm -f .fn_details_backup + } | column -s $'\t' -t fi } @@ -260,9 +246,8 @@ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game\tINBOUND\t${port}\tudp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -288,9 +273,8 @@ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game\tINBOUND\t${port}\tudp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -316,9 +300,8 @@ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game\tINBOUND\t${port}\tudp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -353,9 +336,8 @@ fi echo -e "> Game\tINBOUND\t${port}\tudp" echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp" echo -e "> Steam: Master traffic\tINBOUND\t${masterport}\tudp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -384,9 +366,8 @@ echo -e "" echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game/RCON\tINBOUND\t${port}\ttcp" echo -e "> Query\tINBOUND\t${queryport}\tudp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -417,9 +398,8 @@ echo -e "" echo -e "> SourceTV\tINBOUND\t${sourcetvport}\tudp" fi echo -e "< Client\tOUTBOUND\t${clientport}\tudp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -449,9 +429,7 @@ echo -e "" echo -e "> Game/RCON\tINBOUND\t${port}\tudp" echo -e "> Query\tINBOUND\t${queryport}\tudp" echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t echo -e "" echo -e "\e[92m${servername} WebAdmin\e[0m" printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = @@ -459,9 +437,8 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mWebAdmin url:\t\e[0mhttp://${ip}:${webadminport}/index.html" echo -e "\e[34mWebAdmin username:\t\e[0m${webadminuser}" echo -e "\e[34mWebAdmin password:\t\e[0m${webadminpass}" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -490,9 +467,8 @@ echo -e "" echo -e "> Game\tINBOUND\t${port}\ttcp" echo -e "> Query\tINBOUND\t${queryport}\ttcp" echo -e "> Rcon\tINBOUND\t${rconport}\ttcp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -520,9 +496,8 @@ echo -e "" echo -e "> Voice\tINBOUND\t${port}\tudp" echo -e "> ServerQuery\tINBOUND\t${queryport}\ttcp" echo -e "> File transfer\tINBOUND\t${fileport}\ttcp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -549,9 +524,8 @@ echo -e "" { echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "> Game\tINBOUND\t${port}\ttcp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -580,9 +554,8 @@ echo -e "" echo -e "> Game\tINBOUND\t${port}\ttcp" echo -e "> Query\tINBOUND\t${queryport}\ttcp" echo -e "> Rcon\tINBOUND\t${rconport}\ttcp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -613,9 +586,7 @@ echo -e "" echo -e "> Query\tINBOUND\t${queryport}\tudp" echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp" echo -e "> Telnet\tINBOUND\t${telnetport}\ttcp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t echo -e "" echo -e "\e[92m${servername} WebAdmin\e[0m" printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = @@ -623,9 +594,7 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mWebAdmin enabled:\t\e[0m${webadminenabled}" echo -e "\e[34mWebAdmin url:\t\e[0mhttp://${ip}:${webadminport}" echo -e "\e[34mWebAdmin password:\t\e[0m${webadminpass}" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t echo -e "" echo -e "\e[92m${servername} Telnet\e[0m" printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = @@ -633,9 +602,8 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mTelnet enabled:\t\e[0m${telnetenabled}" echo -e "\e[34mTelnet address:\t\e[0m${ip} ${telnetport}" echo -e "\e[34mTelnet password:\t\e[0m${telnetpass}" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } @@ -683,9 +651,7 @@ echo -e "" fi fi echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp\tListenPort=${webadminport}" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t echo -e "" echo -e "\e[92m${servername} WebAdmin\e[0m" printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = @@ -694,9 +660,8 @@ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' = echo -e "\e[34mWebAdmin url:\t\e[0mhttp://${ip}:${webadminport}" echo -e "\e[34mWebAdmin username:\t\e[0m${webadminuser}" echo -e "\e[34mWebAdmin password:\t\e[0m${webadminpass}" -} >> .fn_details_webadmin -column -s $'\t' -t .fn_details_webadmin -rm -f .fn_details_webadmin +} | column -s $'\t' -t + fn_details_statusbottom } @@ -725,9 +690,8 @@ echo -e "" echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL\tINI VARIABLE" echo -e "> Game\tINBOUND\t${port}\tudp\tPort=${port}" echo -e "> Query\tINBOUND\t${queryport}\tudp" -} >> .fn_details_ports -column -s $'\t' -t .fn_details_ports -rm -f .fn_details_ports +} | column -s $'\t' -t + fn_details_statusbottom } From 01744b9f99c8afaf44973c6848d21ae243bfebd7 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:40:42 +0000 Subject: [PATCH 09/15] newer version put back in to branch --- functions/fn_details_config | 64 ++++++++++++++++++------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/functions/fn_details_config b/functions/fn_details_config index f8727f1f5..815153f23 100644 --- a/functions/fn_details_config +++ b/functions/fn_details_config @@ -8,7 +8,7 @@ ## Examples of filtering to get info from config files # sed 's/foo//g' - remove foo -# tr -cd [:digit:] leave only digits +# tr -cd '[:digit:]' leave only digits # tr -d '=\"; ' remove selected charectors =\"; # grep -v "foo" filter out lines that contain foo @@ -52,7 +52,7 @@ if [ "${engine}" == "avalanche" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "MaxPlayers" "${servercfgfullpath}" | tr -cd "[:digit:]") + slots=$(grep "MaxPlayers" "${servercfgfullpath}" | tr -cd '[:digit:]') if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -62,7 +62,7 @@ if [ "${engine}" == "avalanche" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "BindPort" "${servercfgfullpath}" | tr -cd "[:digit:]") + port=$(grep "BindPort" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -95,7 +95,7 @@ elif [ "${engine}" == "dontstarve" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "max_players" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") + slots=$(grep "max_players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -115,7 +115,7 @@ elif [ "${engine}" == "dontstarve" ]; then # tickrate if [ -f "${servercfgfullpath}" ]; then - tickrate=$(grep "tick_rate" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") + tickrate=$(grep "tick_rate" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') if [ ! -n "${tickrate}" ]; then tickrate="NOT SET" fi @@ -125,7 +125,7 @@ elif [ "${engine}" == "dontstarve" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "server_port" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") + port=$(grep "server_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -148,7 +148,7 @@ elif [ "${engine}" == "projectzomboid" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") + slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -158,7 +158,7 @@ elif [ "${engine}" == "projectzomboid" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "DefaultPort=" "${servercfgfullpath}" | tr -cd "[:digit:]") + port=$(grep "DefaultPort=" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -201,7 +201,7 @@ elif [ "${engine}" == "realvirtuality" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "maxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") + slots=$(grep "maxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -211,7 +211,7 @@ elif [ "${engine}" == "realvirtuality" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "serverport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd "[:digit:]") + port=$(grep "serverport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -219,7 +219,7 @@ elif [ "${engine}" == "realvirtuality" ]; then # query port if [ -f "${servercfgfullpath}" ]; then - queryport=$(grep "steamqueryport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd "[:digit:]") + queryport=$(grep "steamqueryport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]') fi if [ ! -n "${queryport}" ]; then queryport="0" @@ -227,7 +227,7 @@ elif [ "${engine}" == "realvirtuality" ]; then # master port if [ -f "${servercfgfullpath}" ]; then - masterport=$(grep "steamport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd "[:digit:]") + masterport=$(grep "steamport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]') fi if [ ! -n "${masterport}" ]; then masterport="0" @@ -259,7 +259,7 @@ elif [ "${engine}" == "seriousengine35" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "gam_ctMaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd "[:digit:]") + slots=$(grep "gam_ctMaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]') if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -279,7 +279,7 @@ elif [ "${engine}" == "seriousengine35" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "prj_uwPort" "${servercfgfullpath}" | tr -d '\r' | tr -cd "[:digit:]") + port=$(grep "prj_uwPort" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -309,7 +309,7 @@ elif [ "${engine}" == "source" ] || [ "${engine}" == "goldsource" ]; then # server password if [ -f "${servercfgfullpath}" ]; then - serverpassword=$(grep "sv_password" "${servercfgfullpath}" | sed 's/sv_password//g' | sed 's/"//g') + serverpassword=$(grep "sv_password" "${servercfgfullpath}" | sed 's/sv_password //g' | sed 's/"//g') if [ ! -n "${serverpassword}" ]; then serverpassword="NOT SET" fi @@ -364,7 +364,7 @@ elif [ "${gamename}" == "Teamspeak 3" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "default_voice_port=" "${servercfgfullpath}" | tr -cd "[:digit:]") + port=$(grep "default_voice_port=" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="9987" @@ -372,7 +372,7 @@ elif [ "${gamename}" == "Teamspeak 3" ]; then # query port if [ -f "${servercfgfullpath}" ]; then - queryport=$(grep "query_port=" "${servercfgfullpath}" | tr -cd "[:digit:]") + queryport=$(grep "query_port=" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${queryport}" ]; then queryport="10011" @@ -380,7 +380,7 @@ elif [ "${gamename}" == "Teamspeak 3" ]; then # file port if [ -f "${servercfgfullpath}" ]; then - fileport=$(grep "filetransfer_port=" "${servercfgfullpath}" | tr -cd "[:digit:]") + fileport=$(grep "filetransfer_port=" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${fileport}" ]; then fileport="30033" @@ -422,7 +422,7 @@ elif [ "${engine}" == "teeworlds" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd "[:digit:]") + port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="8303" @@ -430,7 +430,7 @@ elif [ "${engine}" == "teeworlds" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "sv_max_clients" "${servercfgfullpath}" | tr -cd "[:digit:]") + slots=$(grep "sv_max_clients" "${servercfgfullpath}" | tr -cd '[:digit:]') if [ ! -n "${slots}" ]; then slots="12" fi @@ -444,7 +444,7 @@ elif [ "${engine}" == "terraria" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "port=" "${servercfgfullpath}" | tr -cd "[:digit:]") + port=$(grep "port=" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -484,7 +484,7 @@ elif [ "${engine}" == "unity3d" ]; then # webadmin port if [ -f "${servercfgfullpath}" ]; then - webadminport=$(grep "ControlPanelPort" "${servercfgfullpath}" | tr -cd "[:digit:]") + webadminport=$(grep "ControlPanelPort" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${webadminport}" ]; then webadminport="0" @@ -522,7 +522,7 @@ elif [ "${engine}" == "unity3d" ]; then # telnet port if [ -f "${servercfgfullpath}" ]; then - telnetport=$(grep "TelnetPort" "${servercfgfullpath}" | tr -cd "[:digit:]") + telnetport=$(grep "TelnetPort" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${telnetport}" ]; then telnetport="0" @@ -540,7 +540,7 @@ elif [ "${engine}" == "unity3d" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "ServerMaxPlayerCount" "${servercfgfullpath}" | tr -cd "[:digit:]") + slots=$(grep "ServerMaxPlayerCount" "${servercfgfullpath}" | tr -cd '[:digit:]') if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -570,7 +570,7 @@ elif [ "${engine}" == "unity3d" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd "[:digit:]") + port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -620,7 +620,7 @@ elif [ "${engine}" == "unreal" ] || [ "${engine}" == "unreal2" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "Port=" "${servercfgfullpath}" | grep -v "Master" | grep -v "LAN" | grep -v "Proxy" | grep -v "Listen" | tr -d '\r' | tr -cd "[:digit:]") + port=$(grep "Port=" "${servercfgfullpath}" | grep -v "Master" | grep -v "LAN" | grep -v "Proxy" | grep -v "Listen" | tr -d '\r' | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -636,7 +636,7 @@ elif [ "${engine}" == "unreal" ] || [ "${engine}" == "unreal2" ]; then # gamespy query port if [ -f "${servercfgfullpath}" ]; then - gsqueryport=$(grep "OldQueryPortNumber=" "${servercfgfullpath}" | tr -d '\r' | tr -cd "[:digit:]") + gsqueryport=$(grep "OldQueryPortNumber=" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]') fi if [ ! -n "${gsqueryport}" ]; then gsqueryport="0" @@ -662,7 +662,7 @@ elif [ "${engine}" == "unreal" ] || [ "${engine}" == "unreal2" ]; then # webadmin port if [ -f "${servercfgfullpath}" ]; then - webadminport=$(grep "ListenPort=" "${servercfgfullpath}" | tr -d '\r' | tr -cd "[:digit:]") + webadminport=$(grep "ListenPort=" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]') fi if [ ! -n "${webadminport}" ]; then webadminport="0" @@ -750,7 +750,7 @@ elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then # slots if [ -f "${servercfgfullpath}" ]; then - slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd "[:digit:]") + slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]') if [ ! -n "${slots}" ]; then slots="NOT SET" fi @@ -760,7 +760,7 @@ elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then # port if [ -f "${servercfgfullpath}" ]; then - port=$(grep "Port=" "${servercfgfullpath}" | grep -v "RCONPort=" | grep -v "QueryPort=" | tr -cd "[:digit:]") + port=$(grep "Port=" "${servercfgfullpath}" | grep -v "RCONPort=" | grep -v "QueryPort=" | tr -cd '[:digit:]') fi if [ ! -n "${port}" ]; then port="0" @@ -768,7 +768,7 @@ elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then # rcon port if [ -f "${servercfgfullpath}" ]; then - rconport=$(grep "RCONPort=" "${servercfgfullpath}" | tr -cd "[:digit:]") + rconport=$(grep "RCONPort=" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${rconport}" ]; then rconport="0" @@ -776,7 +776,7 @@ elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then # query port if [ -f "${servercfgfullpath}" ]; then - queryport=$(grep "QueryPort=" "${servercfgfullpath}" | tr -cd "[:digit:]") + queryport=$(grep "QueryPort=" "${servercfgfullpath}" | tr -cd '[:digit:]') fi if [ ! -n "${queryport}" ]; then queryport="0" From 97372c24ac7e4ed2cc32fbfaad76503c4c0011cb Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:42:12 +0000 Subject: [PATCH 10/15] date corrected --- functions/fn_details_distro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions/fn_details_distro b/functions/fn_details_distro index b11b27b14..4246d4a89 100644 --- a/functions/fn_details_distro +++ b/functions/fn_details_distro @@ -2,7 +2,7 @@ # LGSM fn_details_distro function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 270515 +# Version: 301015 # Description: Variables providing useful info on the Operating System such as disk and performace info. # Used for fn_details, fn_debug and fn_email. From 291bc8a0280209c51a4e45edf6d422bcfb806201 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:42:43 +0000 Subject: [PATCH 11/15] added newer version --- functions/fn_install_glibcfix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/functions/fn_install_glibcfix b/functions/fn_install_glibcfix index 52868e908..18f1b0840 100644 --- a/functions/fn_install_glibcfix +++ b/functions/fn_install_glibcfix @@ -2,7 +2,7 @@ # LGSM fn_install_glibcfix function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 050715 +# Version: 301015 fn_glibcfixmsg(){ echo "" @@ -48,7 +48,7 @@ if [ -z $(command -v ldd) ]; then esac done # if Glibc less than 1.15 -elif [ "$(ldd --version | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" -lt 215 ]; then +elif [ "$(ldd --version | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" -lt 215 ]; then # Blade Symphony if [ "${gamename}" == "Blade Symphony" ]; then glibcversion="2.15" @@ -110,7 +110,7 @@ elif [ "$(ldd --version | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" -lt 215 wget -nv -N https://github.com/dgibbs64/linuxgsm/raw/master/NoMoreRoomInHell/dependencies/libm.so.6 cp -v "${rootdir}/steamcmd/linux32/libstdc++.so.6" "${filesdir}/libstdc++.so.6" # if Glibc less than 1.13 - elif [ "$(ldd --version | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" -lt 213 ]; then + elif [ "$(ldd --version | sed -n '1 p' | tr -cd '[:digit:]' | tail -c 3)" -lt 213 ]; then # ARMA 3 if [ "${gamename}" == "ARMA 3" ]; then glibcversion="2.13" From 111d12359a5240fa3ebda8c55d66637b65e1d1e1 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:43:30 +0000 Subject: [PATCH 12/15] added newer version --- functions/fn_install_ts3 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/functions/fn_install_ts3 b/functions/fn_install_ts3 index 81c229f88..bde40acfe 100644 --- a/functions/fn_install_ts3 +++ b/functions/fn_install_ts3 @@ -2,7 +2,7 @@ # LGSM fn_install_ts3 function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 270715 +# Version: 311015 fn_details_distro # Gets the teamspeak server architecture @@ -19,7 +19,7 @@ fi wget "http://dl.4players.de/ts/releases/?C=M;O=D" -q -O -| grep -i dir | egrep -o '.*\/<\/a>' | egrep -o '[0-9\.?]+'|uniq > .ts3_version_numbers_unsorted.tmp # removes digits to allow sorting of numbers -cat .ts3_version_numbers_unsorted.tmp |tr -cd "[:digit:][*\n]" > .ts3_version_numbers_digit.tmp +cat .ts3_version_numbers_unsorted.tmp |tr -cd '[:digit:][*\n]' > .ts3_version_numbers_digit.tmp # Sorts numbers in to correct order # merges two files in to one with two columns sorts the numbers in to order then only outputs the second to the ts3_version_numbers.tmp paste .ts3_version_numbers_digit.tmp .ts3_version_numbers_unsorted.tmp |sort -rn|awk '{ print $2 }' > .ts3_version_numbers.tmp From 7222b48160edcecb687633911c4238f465322138 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:44:00 +0000 Subject: [PATCH 13/15] added newer version --- functions/fn_monitor_query | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/functions/fn_monitor_query b/functions/fn_monitor_query index 33b158ac3..f56b6cf23 100644 --- a/functions/fn_monitor_query +++ b/functions/fn_monitor_query @@ -2,7 +2,7 @@ # LGSM fn_monitor_query function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 030715 +# Version: 311015 # Description: uses gsquery.py to directly query the server. # Detects if the server has frozen. @@ -10,15 +10,15 @@ local modulename="Monitor" if [ -f "${rootdir}/gsquery.py" ]; then if [ "${engine}" == "unreal" ]||[ "${engine}" == "unreal2" ]; then - gameport=$(grep Port= "${servercfgfullpath}"|grep -v Master|grep -v LAN|grep -v Proxy|grep -v Listen|tr -d '\r'|tr -cd [:digit:]) + gameport=$(grep Port= "${servercfgfullpath}"|grep -v Master|grep -v LAN|grep -v Proxy|grep -v Listen|tr -d '\r'|tr -cd '[:digit:]') port=$((${gameport} + 1)) elif [ "${engine}" == "spark" ]; then port=$((${port} + 1)) elif [ "${engine}" == "realvirtuality" ]; then - queryport=$(grep -s steamqueryport= "${servercfgfullpath}"|grep -v //|tr -d '\r'|tr -cd [:digit:]) + queryport=$(grep -s steamqueryport= "${servercfgfullpath}"|grep -v //|tr -d '\r'|tr -cd '[:digit:]') port=${queryport} elif [ "${engine}" == "unity3d" ]; then - gameport=$(grep ServerPort "${servercfgfullpath}"|tr -cd [:digit:]) + gameport=$(grep ServerPort "${servercfgfullpath}"|tr -cd '[:digit:]') port=$((${gameport} + 1)) fi fn_printinfo "Detected gsquery.py" From 841d9fc5c087c4ace5dab8e668aa36e43c7fb7b1 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:44:31 +0000 Subject: [PATCH 14/15] added newer version --- functions/fn_start | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/functions/fn_start b/functions/fn_start index 8bb90da71..66d9ae355 100644 --- a/functions/fn_start +++ b/functions/fn_start @@ -2,7 +2,7 @@ # LGSM fn_start function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -# Version: 291015 +# Version: 301015 # Description: Starts the server. @@ -126,11 +126,11 @@ date > "${rootdir}/${lockselfname}" cd "${executabledir}" tmux new-session -d -s "${servicename}" "${executable} ${parms}" 2> "${scriptlogdir}/.${servicename}-tmux-error.tmp" # tmux pipe-pane not supported in tmux versions < 1.6 -if [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd [:digit:])" -lt "16" ]; then +if [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd '[:digit:]')" -lt "16" ]; then echo "Console logging disabled: Tmux => 1.6 required" >> "${consolelog}" echo "http://gameservermanagers.com/tmux-upgrade" >> "${consolelog}" echo "Currently installed: $(tmux -V)" >> "${consolelog}" -elif [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd [:digit:])" -eq "18" ]; then +elif [ "$(tmux -V|sed "s/tmux //"|sed -n '1 p'|tr -cd '[:digit:]')" -eq "18" ]; then echo "Console logging disabled: Bug in tmux 1.8 breaks logging" >> "${consolelog}" echo "http://gameservermanagers.com/tmux-upgrade" >> "${consolelog}" echo "Currently installed: $(tmux -V)" >> "${consolelog}" From 5d323790522e37b7b4891948e329216b8bf43794 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Sun, 1 Nov 2015 17:45:16 +0000 Subject: [PATCH 15/15] newer version --- functions/fn_update_check | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/functions/fn_update_check b/functions/fn_update_check index 6ac663ef6..443a88f1c 100644 --- a/functions/fn_update_check +++ b/functions/fn_update_check @@ -2,11 +2,7 @@ # LGSM fn_update_check function # Author: Daniel Gibbs # Website: http://gameservermanagers.com -<<<<<<< HEAD -# Version: 281015 -======= # Version: 311015 ->>>>>>> refs/remotes/origin/master # Description: Checks if a server update is available. @@ -223,7 +219,7 @@ ts3arch=$(ls $(find ${filesdir}/ -name 'ts3server_*_*' 2> /dev/null | grep -v 't wget "http://dl.4players.de/ts/releases/?C=M;O=D" -q -O -| grep -i dir | egrep -o '.*\/<\/a>' | egrep -o '[0-9\.?]+'|uniq > .ts3_version_numbers_unsorted.tmp # removes digits to allow sorting of numbers -cat .ts3_version_numbers_unsorted.tmp |tr -cd "[:digit:][*\n]" > .ts3_version_numbers_digit.tmp +cat .ts3_version_numbers_unsorted.tmp |tr -cd '[:digit:][*\n]' > .ts3_version_numbers_digit.tmp # Sorts numbers in to correct order # merges two files in to one with two columns sorts the numbers in to order then only outputs the second to the ts3_version_numbers.tmp paste .ts3_version_numbers_digit.tmp .ts3_version_numbers_unsorted.tmp |sort -rn|awk '{ print $2 }' > .ts3_version_numbers.tmp @@ -257,8 +253,8 @@ else fi # Removes dots so if can compare version numbers -currentbuilddigit=$(echo "${currentbuild}"|tr -cd "[:digit:]") -availablebuilddigit=$(echo "${availablebuild}"|tr -cd "[:digit:]") +currentbuilddigit=$(echo "${currentbuild}"|tr -cd '[:digit:]') +availablebuilddigit=$(echo "${availablebuild}"|tr -cd '[:digit:]') if [ "${currentbuilddigit}" -ne "${availablebuilddigit}" ]; then echo -e "\n" echo -e "Update available:"