mirror of
https://hubproxy.babadafafafafa.cn/https://github.com/Mapleawaa/PVE-Tools-9.git
synced 2026-09-20 08:03:35 +08:00
fix: source each module init.sh before sibling scripts
Previously find|sort loaded all .sh files globally, so cpupower.sh (c < i) loaded before init.sh in the same module. Now each module directory loads init.sh first, then the remaining files in alphabetical order.
This commit is contained in:
16
PVE-Tools.sh
16
PVE-Tools.sh
@@ -51,10 +51,18 @@ if [[ -f "$SCRIPT_DIR/lib/config.sh" && -d "$SCRIPT_DIR/src/modules" ]]; then
|
|||||||
source "$lib_file"
|
source "$lib_file"
|
||||||
done
|
done
|
||||||
|
|
||||||
while IFS= read -r -d '' module_file; do
|
for module_dir in "$SCRIPT_DIR/src/modules"/*/; do
|
||||||
# shellcheck source=/dev/null
|
[[ -d "$module_dir" ]] || continue
|
||||||
source "$module_file"
|
if [[ -f "${module_dir}init.sh" ]]; then
|
||||||
done < <(find "$SCRIPT_DIR/src/modules" -name '*.sh' -print0 | sort -z)
|
# shellcheck source=/dev/null
|
||||||
|
source "${module_dir}init.sh"
|
||||||
|
fi
|
||||||
|
while IFS= read -r -d '' module_file; do
|
||||||
|
[[ "$module_file" == "${module_dir}init.sh" ]] && continue
|
||||||
|
# shellcheck source=/dev/null
|
||||||
|
source "$module_file"
|
||||||
|
done < <(find "$module_dir" -name '*.sh' -print0 | sort -z)
|
||||||
|
done
|
||||||
else
|
else
|
||||||
# 远程模式:下载 dist 单文件并执行
|
# 远程模式:下载 dist 单文件并执行
|
||||||
tmp_dir="$(mktemp -d)"
|
tmp_dir="$(mktemp -d)"
|
||||||
|
|||||||
Reference in New Issue
Block a user