Files
tizi/config/check.bash
T
2026-07-15 13:36:24 +08:00

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