47 lines
1.1 KiB
Bash
47 lines
1.1 KiB
Bash
#!/bin/bash
|
|
|
|
# 启用严格模式
|
|
set -euo pipefail
|
|
|
|
# 获取脚本所在目录(即 config 目录)
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
|
|
# 计算根目录(config 的上一级)
|
|
ROOT_DIR="$(cd "$SCRIPT_DIR/../config" && pwd)"
|
|
|
|
# 定义内核和配置文件路径
|
|
MIHOMO_PATH="$ROOT_DIR/mihomo-windows-amd64-v3-go125.exe"
|
|
CONFIG_PATH="$SCRIPT_DIR/config.yaml"
|
|
|
|
# 定义颜色输出
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# 检查内核文件是否存在
|
|
if [ ! -f "$MIHOMO_PATH" ]; then
|
|
echo -e "${RED}错误:未找到 Mihomo 内核:$MIHOMO_PATH${NC}" >&2
|
|
exit 1
|
|
fi
|
|
|
|
# 检查配置文件是否存在
|
|
if [ ! -f "$CONFIG_PATH" ]; then
|
|
echo -e "${RED}错误:未找到配置文件:$CONFIG_PATH${NC}" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "正在检查配置格式:$CONFIG_PATH"
|
|
|
|
# 执行配置检查
|
|
# -t: 测试模式
|
|
# -d: 指定工作目录为根目录
|
|
# -f: 指定配置文件
|
|
if "$MIHOMO_PATH" -t -d "$ROOT_DIR" -f "$CONFIG_PATH"; then
|
|
echo -e "${GREEN}配置格式检查通过。${NC}"
|
|
exit 0
|
|
else
|
|
EXIT_CODE=$?
|
|
echo -e "${RED}配置格式检查失败。${NC}" >&2
|
|
exit $EXIT_CODE
|
|
fi
|