Pārlūkot izejas kodu

修复mod列表处理机制

Dcrclub 1 mēnesi atpakaļ
vecāks
revīzija
e56fbc40a6
1 mainītis faili ar 10 papildinājumiem un 5 dzēšanām
  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