From 1efc24885b97380a1849a59734b56c7bae074cf9 Mon Sep 17 00:00:00 2001 From: Sergei Solovev <31823239+SeAnSolovev@users.noreply.github.com> Date: Sun, 15 Sep 2024 23:52:38 +0300 Subject: [PATCH] Added the game server installation menu (#52) Added the game server installation menu --- install.sh | 642 +++++++++++++++++++++++++++-------------------------- 1 file changed, 323 insertions(+), 319 deletions(-) diff --git a/install.sh b/install.sh index 523852e..8deb47a 100644 --- a/install.sh +++ b/install.sh @@ -777,356 +777,360 @@ EOF fi ;; 3) - clear - # Игровой репозиторий - gamesURL="http://gs.enginegp.ru" + game_menu() { + clear + # Игровой репозиторий + gamesURL="http://gs.enginegp.ru" - echo "Меню установки игровых серверов:" - echo "1. Counter-Strike: 1.6" - echo "2. Counter-Strike: Source v34 (old)" - echo "3. Counter-Strike: Source (new)" - echo "4. Counter-Strike: Global Offensive" - echo "5. Counter-Strike: 2" - echo "6. Grand Theft Auto: San Andreas MultiPlayer" - echo "7. Grand Theft Auto: Criminal Russia MultiPlayer" - echo "8. Grand Theft Auto: Multi Theft Auto" - echo "9. Minecraft Java Edition" - echo "10. RUST" - echo "0. Вернуться в предыдущее меню" + echo "Меню установки игровых серверов:" + echo "1. Counter-Strike: 1.6" + echo "2. Counter-Strike: Source v34 (old)" + echo "3. Counter-Strike: Source (new)" + echo "4. Counter-Strike: Global Offensive" + echo "5. Counter-Strike: 2" + echo "6. Grand Theft Auto: San Andreas MultiPlayer" + echo "7. Grand Theft Auto: Criminal Russia MultiPlayer" + echo "8. Grand Theft Auto: Multi Theft Auto" + echo "9. Minecraft Java Edition" + echo "10. RUST" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " game_choice + read -rp "Выберите пункт меню: " game_choice - case $game_choice in - 1) - crmp_menu() { - while true; do - clear - mkdir -p /path/cs /path/update/cs /path/maps/cs /servers/cs 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки Counter-Strike: 1.6" - echo "1. Steam" - echo "0. Вернуться в предыдущее меню" + case $game_choice in + 1) + crmp_menu() { + while true; do + clear + mkdir -p /path/cs /path/update/cs /path/maps/cs /servers/cs 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки Counter-Strike: 1.6" + echo "1. Steam" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " cs16_choice + read -rp "Выберите пункт меню: " cs16_choice - case $cs16_choice in - 1) - mkdir -p /path/cs/steam 2>&1 | tee -a "${logsInst}" - sudo /path/cmd/steamcmd.sh +force_install_dir /path/cs/steam +login anonymous +app_update 90 -beta beta validate +quit 2>&1 | tee -a "${logsInst}" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } - ;; - 2) - cssold_menu() { - while true; do - clear - mkdir -p /path/cssold /path/update/cssold /path/maps/cssold /servers/cssold 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки Counter-Strike: Source v34" - echo "1. Steam" - echo "0. Вернуться в предыдущее меню" + case $cs16_choice in + 1) + mkdir -p /path/cs/steam 2>&1 | tee -a "${logsInst}" + sudo /path/cmd/steamcmd.sh +force_install_dir /path/cs/steam +login anonymous +app_update 90 -beta beta validate +quit 2>&1 | tee -a "${logsInst}" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } + ;; + 2) + cssold_menu() { + while true; do + clear + mkdir -p /path/cssold /path/update/cssold /path/maps/cssold /servers/cssold 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки Counter-Strike: Source v34" + echo "1. Steam" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " css34_choice + read -rp "Выберите пункт меню: " css34_choice - case $css34_choice in - 1) - mkdir -p /path/cssold/steam 2>&1 | tee -a "${logsInst}" - curl -SL -o /path/cssold/steam/steam.zip $gamesURL/cssold/steam.zip 2>&1 | tee -a "${logsInst}" - sudo unzip -o /path/cssold/steam/steam.zip -d /path/cssold/steam/ 2>&1 | tee -a "${logsInst}" - sudo rm /path/cssold/steam/steam.zip | tee -a "$logsInst" 2>&1 | tee -a "${logsInst}" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + case $css34_choice in + 1) + mkdir -p /path/cssold/steam 2>&1 | tee -a "${logsInst}" + curl -SL -o /path/cssold/steam/steam.zip $gamesURL/cssold/steam.zip 2>&1 | tee -a "${logsInst}" + sudo unzip -o /path/cssold/steam/steam.zip -d /path/cssold/steam/ 2>&1 | tee -a "${logsInst}" + sudo rm /path/cssold/steam/steam.zip | tee -a "$logsInst" 2>&1 | tee -a "${logsInst}" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - cssold_menu - ;; - 3) - css_menu() { - while true; do - clear - mkdir -p /path/css /path/update/css /path/maps/css /servers/css 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки Counter-Strike: Source" - echo "1. Steam" - echo "0. Вернуться в предыдущее меню" + cssold_menu + ;; + 3) + css_menu() { + while true; do + clear + mkdir -p /path/css /path/update/css /path/maps/css /servers/css 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки Counter-Strike: Source" + echo "1. Steam" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " css_choice + read -rp "Выберите пункт меню: " css_choice - case $css_choice in - 1) - mkdir -p /path/css/steam 2>&1 | tee -a "${logsInst}" - /path/cmd/steamcmd.sh +force_install_dir /path/css/steam +login anonymous +app_update 232330 validate +quit 2>&1 | tee -a "${logsInst}" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + case $css_choice in + 1) + mkdir -p /path/css/steam 2>&1 | tee -a "${logsInst}" + /path/cmd/steamcmd.sh +force_install_dir /path/css/steam +login anonymous +app_update 232330 validate +quit 2>&1 | tee -a "${logsInst}" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - css_menu - ;; - 4) - csgo_menu() { - while true; do - clear - mkdir -p /path/csgo /path/update/csgo /path/maps/csgo /servers/csgo 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки Counter-Strike: GO" - echo "1. Steam" - echo "0. Вернуться в предыдущее меню" + css_menu + ;; + 4) + csgo_menu() { + while true; do + clear + mkdir -p /path/csgo /path/update/csgo /path/maps/csgo /servers/csgo 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки Counter-Strike: GO" + echo "1. Steam" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " csgo_choice + read -rp "Выберите пункт меню: " csgo_choice - case $csgo_choice in - 1) - mkdir -p /path/csgo/steam 2>&1 | tee -a "${logsInst}" - /path/cmd/steamcmd.sh +force_install_dir /path/csgo/steam +login anonymous +app_update 740 validate +quit 2>&1 | tee -a "${logsInst}" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + case $csgo_choice in + 1) + mkdir -p /path/csgo/steam 2>&1 | tee -a "${logsInst}" + /path/cmd/steamcmd.sh +force_install_dir /path/csgo/steam +login anonymous +app_update 740 validate +quit 2>&1 | tee -a "${logsInst}" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - csgo_menu - ;; - 5) - cs2_menu() { - while true; do - clear - mkdir -p /path/cs2 /path/update/cs2 /path/maps/cs2 /servers/cs2 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки Counter-Strike: 2" - echo "1. Steam" - echo "0. Вернуться в предыдущее меню" + csgo_menu + ;; + 5) + cs2_menu() { + while true; do + clear + mkdir -p /path/cs2 /path/update/cs2 /path/maps/cs2 /servers/cs2 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки Counter-Strike: 2" + echo "1. Steam" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " cs2_choice + read -rp "Выберите пункт меню: " cs2_choice - case $cs2_choice in - 1) - mkdir -p /path/cs2/steam 2>&1 | tee -a "${logsInst}" - /path/cmd/steamcmd.sh +force_install_dir /path/cs2/steam +login anonymous +app_update 730 validate +quit 2>&1 | tee -a "${logsInst}" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + case $cs2_choice in + 1) + mkdir -p /path/cs2/steam 2>&1 | tee -a "${logsInst}" + /path/cmd/steamcmd.sh +force_install_dir /path/cs2/steam +login anonymous +app_update 730 validate +quit 2>&1 | tee -a "${logsInst}" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - cs2_menu - ;; - 6) - samp_menu() { - while true; do - clear - mkdir -p /path/samp /path/update/samp /path/maps/samp /servers/samp /tmp/enginegp 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки GTA: SAMP" - echo "1. 0.3.7-R2" - echo "0. Вернуться в предыдущее меню" + cs2_menu + ;; + 6) + samp_menu() { + while true; do + clear + mkdir -p /path/samp /path/update/samp /path/maps/samp /servers/samp /tmp/enginegp 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки GTA: SAMP" + echo "1. 0.3.7-R2" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " samp_choice + read -rp "Выберите пункт меню: " samp_choice - case $samp_choice in - 1) - curl -SL -o /tmp/enginegp/samp037svr_R2-2-1.tar.gz https://gta-multiplayer.cz/downloads/samp037svr_R2-2-1.tar.gz 2>&1 | tee -a "${logsInst}" - sudo tar -xzf /tmp/enginegp/samp037svr_R2-2-1.tar.gz -C /tmp/enginegp 2>&1 | tee -a "$logsInst" - sudo mv /tmp/enginegp/samp03 /path/samp/037R2 2>&1 | tee -a "$logsInst" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + case $samp_choice in + 1) + curl -SL -o /tmp/enginegp/samp037svr_R2-2-1.tar.gz https://gta-multiplayer.cz/downloads/samp037svr_R2-2-1.tar.gz 2>&1 | tee -a "${logsInst}" + sudo tar -xzf /tmp/enginegp/samp037svr_R2-2-1.tar.gz -C /tmp/enginegp 2>&1 | tee -a "$logsInst" + sudo mv /tmp/enginegp/samp03 /path/samp/037R2 2>&1 | tee -a "$logsInst" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - samp_menu - ;; - 7) - crmp_menu() { - while true; do - clear - mkdir -p /path/crmp /path/update/crmp /path/maps/crmp /servers/crmp /tmp/enginegp 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки GTA: CRMP" - echo "1. 0.3e Rev C3" - echo "2. 0.3.7 Rev C5" - echo "0. Вернуться в предыдущее меню" + samp_menu + ;; + 7) + crmp_menu() { + while true; do + clear + mkdir -p /path/crmp /path/update/crmp /path/maps/crmp /servers/crmp /tmp/enginegp 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки GTA: CRMP" + echo "1. 0.3e Rev C3" + echo "2. 0.3.7 Rev C5" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " crmp_choice + read -rp "Выберите пункт меню: " crmp_choice - case $crmp_choice in - 1) - curl -SL -o /tmp/enginegp/srv-cr-mp-c3-linux.tar.gz https://cr-mp.ru/download/srv-cr-mp-c3-linux.tar.gz 2>&1 | tee -a "${logsInst}" - sudo tar -xzf /tmp/enginegp/srv-cr-mp-c3-linux.tar.gz -C /tmp/enginegp 2>&1 | tee -a "$logsInst" - sudo mv /tmp/enginegp/srv-cr-mp-c3-linux /path/crmp/03eC3 2>&1 | tee -a "$logsInst" - ;; - 2) - curl -SL -o /tmp/enginegp/srv-cr-mp-c5-linux.tar.gz https://cr-mp.ru/download/srv-cr-mp-c5-linux.tar.gz 2>&1 | tee -a "${logsInst}" - sudo tar -xzf /tmp/enginegp/srv-cr-mp-c5-linux.tar.gz -C /tmp/enginegp 2>&1 | tee -a "$logsInst" - sudo mv /tmp/enginegp/samp03 /path/crmp/037C5 2>&1 | tee -a "$logsInst" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + case $crmp_choice in + 1) + curl -SL -o /tmp/enginegp/srv-cr-mp-c3-linux.tar.gz https://cr-mp.ru/download/srv-cr-mp-c3-linux.tar.gz 2>&1 | tee -a "${logsInst}" + sudo tar -xzf /tmp/enginegp/srv-cr-mp-c3-linux.tar.gz -C /tmp/enginegp 2>&1 | tee -a "$logsInst" + sudo mv /tmp/enginegp/srv-cr-mp-c3-linux /path/crmp/03eC3 2>&1 | tee -a "$logsInst" + ;; + 2) + curl -SL -o /tmp/enginegp/srv-cr-mp-c5-linux.tar.gz https://cr-mp.ru/download/srv-cr-mp-c5-linux.tar.gz 2>&1 | tee -a "${logsInst}" + sudo tar -xzf /tmp/enginegp/srv-cr-mp-c5-linux.tar.gz -C /tmp/enginegp 2>&1 | tee -a "$logsInst" + sudo mv /tmp/enginegp/samp03 /path/crmp/037C5 2>&1 | tee -a "$logsInst" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - crmp_menu - ;; - 8) - mta_menu() { - while true; do - clear - mkdir -p /path/mta /path/update/mta /path/maps/mta /servers/mta /tmp/enginegp 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки GTA: MTA" - echo "1. 1.6.0" - echo "0. Вернуться в предыдущее меню" + crmp_menu + ;; + 8) + mta_menu() { + while true; do + clear + mkdir -p /path/mta /path/update/mta /path/maps/mta /servers/mta /tmp/enginegp 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки GTA: MTA" + echo "1. 1.6.0" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " mta_choice + read -rp "Выберите пункт меню: " mta_choice - case $mta_choice in - 1) - curl -SL -o /tmp/enginegp/multitheftauto_linux_x64.tar.gz https://linux.multitheftauto.com/dl/multitheftauto_linux_x64.tar.gz 2>&1 | tee -a "${logsInst}" - sudo tar -xzf /tmp/enginegp/multitheftauto_linux_x64.tar.gz -C /tmp/enginegp 2>&1 | tee -a "$logsInst" - sudo mv /tmp/enginegp/multitheftauto_linux_x64 /path/mta/160 2>&1 | tee -a "$logsInst" - sudo mv /path/mta/160/mta-server64 /path/mta/160/mta-server 2>&1 | tee -a "$logsInst" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + case $mta_choice in + 1) + curl -SL -o /tmp/enginegp/multitheftauto_linux_x64.tar.gz https://linux.multitheftauto.com/dl/multitheftauto_linux_x64.tar.gz 2>&1 | tee -a "${logsInst}" + sudo tar -xzf /tmp/enginegp/multitheftauto_linux_x64.tar.gz -C /tmp/enginegp 2>&1 | tee -a "$logsInst" + sudo mv /tmp/enginegp/multitheftauto_linux_x64 /path/mta/160 2>&1 | tee -a "$logsInst" + sudo mv /path/mta/160/mta-server64 /path/mta/160/mta-server 2>&1 | tee -a "$logsInst" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - mta_menu - ;; - 9) - mc_menu() { - while true; do - clear - mkdir -p /path/mc /path/update/mc /path/maps/mc /servers/mc 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Меню установки Minecraft" - echo "1. PaperSpigot 1.20.4 [Java 17]" - echo "0. Вернуться в предыдущее меню" + mta_menu + ;; + 9) + mc_menu() { + while true; do + clear + mkdir -p /path/mc /path/update/mc /path/maps/mc /servers/mc 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Меню установки Minecraft" + echo "1. PaperSpigot 1.20.4 [Java 17]" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " mc_choice + read -rp "Выберите пункт меню: " mc_choice - case $mc_choice in - 1) - mkdir -p /path/mc/paper1204 2>&1 | tee -a "${logsInst}" - curl -SL -o /path/mc/paper1204/start.jar https://api.papermc.io/v2/projects/paper/versions/1.20.4/builds/497/downloads/paper-1.20.4-497.jar 2>&1 | tee -a "${logsInst}" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + case $mc_choice in + 1) + mkdir -p /path/mc/paper1204 2>&1 | tee -a "${logsInst}" + curl -SL -o /path/mc/paper1204/start.jar https://api.papermc.io/v2/projects/paper/versions/1.20.4/builds/497/downloads/paper-1.20.4-497.jar 2>&1 | tee -a "${logsInst}" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - mc_menu - ;; - 10) - rust_menu() { - while true; do - clear - mkdir -p /path/rust /path/update/rust /servers/rust - echo "Меню установки RUST" - echo "1. Steam" - echo "0. Вернуться в предыдущее меню" + mc_menu + ;; + 10) + rust_menu() { + while true; do + clear + mkdir -p /path/rust /path/update/rust /servers/rust + echo "Меню установки RUST" + echo "1. Steam" + echo "0. Вернуться в предыдущее меню" - read -rp "Выберите пункт меню: " rust_choice - case $rust_choice in - 1) - clear - mkdir -p /path/rust/steam 2>&1 | tee -a "${logsInst}" - sudo /path/cmd/steamcmd.sh +force_install_dir /path/rust/steam +login anonymous +app_update 258550 validate +quit 2>&1 | tee -a "${logsInst}" - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac - done - } + read -rp "Выберите пункт меню: " rust_choice + case $rust_choice in + 1) + clear + mkdir -p /path/rust/steam 2>&1 | tee -a "${logsInst}" + sudo /path/cmd/steamcmd.sh +force_install_dir /path/rust/steam +login anonymous +app_update 258550 validate +quit 2>&1 | tee -a "${logsInst}" + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + done + } - rust_menu - ;; - 0) - break - ;; - *) - clear - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" - echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null - ;; - esac + rust_menu + ;; + 0) + break + ;; + *) + clear + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + echo "Неверный выбор. Попробуйте еще раз." | tee -a "$logsInst" + echo "===================================" 2>&1 | sudo tee -a "$logsInst" > /dev/null + ;; + esac + } + + game_menu ;; 4) clear