From 765eb3f8f98e80f87e4a665ef6fd292844fd6c61 Mon Sep 17 00:00:00 2001 From: Dcrclub Date: Fri, 25 Jul 2025 00:06:40 +0800 Subject: [PATCH] =?UTF-8?q?Update:=20=E6=9B=B4=E6=96=B0=E6=A8=A1=E7=BB=84?= =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E6=96=B9=E5=BC=8F,=E4=B8=80=E6=AC=A1?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E8=AF=B7=E6=B1=82=E4=B8=8B=E8=BD=BD=E5=85=A8?= =?UTF-8?q?=E9=83=A8mod?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DockerFile/updatemod.sh | 39 +++++++++++++++++++++++++++++++-------- 1 file changed, 31 insertions(+), 8 deletions(-) diff --git a/DockerFile/updatemod.sh b/DockerFile/updatemod.sh index fa62372..1393f37 100644 --- a/DockerFile/updatemod.sh +++ b/DockerFile/updatemod.sh @@ -46,16 +46,39 @@ if [ -n "$MOD_IDS" ]; then echo "开始更新Mod..." >> "$LOG_FILE" IFS=',' read -ra MOD_ARRAY <<< "$MOD_IDS" + # 创建SteamCMD脚本文件 + SCRIPT_FILE="/opt/steamcmd/update_mods.txt" + echo "创建SteamCMD脚本文件: $SCRIPT_FILE" >> "$LOG_FILE" + + # 写入登录信息 + echo "login $STEAM_USERNAME $STEAM_PASSWORD" > "$SCRIPT_FILE" + + # 为每个Mod ID添加下载命令 for mod_id in "${MOD_ARRAY[@]}"; do - echo "更新Mod ID: $mod_id" >> "$LOG_FILE" - ./steamcmd.sh +login $STEAM_USERNAME $STEAM_PASSWORD +workshop_download_item 221100 $mod_id +quit - - if [ $? -eq 0 ]; then - echo "Mod $mod_id 更新完成" >> "$LOG_FILE" - else - echo "Mod $mod_id 更新失败" >> "$LOG_FILE" - fi + echo "添加Mod ID: $mod_id 到更新脚本" >> "$LOG_FILE" + echo "workshop_download_item 221100 $mod_id validate" >> "$SCRIPT_FILE" done + + # 添加退出命令 + echo "quit" >> "$SCRIPT_FILE" + + # 显示脚本内容(用于调试) + echo "SteamCMD脚本内容:" >> "$LOG_FILE" + cat "$SCRIPT_FILE" >> "$LOG_FILE" + + # 执行SteamCMD脚本 + echo "开始执行SteamCMD脚本..." >> "$LOG_FILE" + ./steamcmd.sh +run_script update_mods.txt + + if [ $? -eq 0 ]; then + echo "所有Mod更新完成" >> "$LOG_FILE" + else + echo "Mod更新过程中出现错误" >> "$LOG_FILE" + fi + + # 清理脚本文件 + rm -f "$SCRIPT_FILE" + echo "清理临时脚本文件" >> "$LOG_FILE" else echo "未配置Mod ID,跳过Mod更新" >> "$LOG_FILE" fi