Ver Fonte

修复mod列表处理机制

Dcrclub há 1 mês atrás
pai
commit
e56fbc40a6
1 ficheiros alterados com 10 adições e 5 exclusões
  1. 10 5
      DockerFile/start.sh

+ 10 - 5
DockerFile/start.sh

@@ -96,24 +96,29 @@ start_dayzserver() {
     # 初始化mod变量
     client_mods=""
     server_mods=""
-    
+
+    # 处理客户端mod(使用 -xtype d)
     while IFS= read -r -d $'\0' folder; do
         echo "处理客户端mod: $folder"
         copy_files "$folder" "."
         if [ -n "$client_mods" ]; then
             client_mods="${client_mods};"
         fi
-        client_mods="${client_mods}${folder}"
-    done < <(find "./client_mod" -type d -name '@*' -print0)
+        client_mods="${client_mods}$(basename "$folder")" # 只保留目录名
+    done < <(find "./client_mod" -xtype d -name '@*' -print0)
 
+    # 处理服务端mod
     while IFS= read -r -d $'\0' folder; do
         echo "处理服务端mod: $folder"
         copy_files "$folder" "."
         if [ -n "$server_mods" ]; then
             server_mods="${server_mods};"
         fi
-        server_mods="${server_mods}${folder}"
-    done < <(find "./server_mod" -type d -name '@*' -print0)
+        server_mods="${server_mods}$(basename "$folder")"
+    done < <(find "./server_mod" -xtype d -name '@*' -print0)
+
+    echo "客户端MODS: $client_mods"
+    echo "服务端MODS: $server_mods"
 
     # 崩溃检测和自动重启循环
     while true; do