Update clashctl

This commit is contained in:
Arvin
2026-03-21 19:10:47 +08:00
parent 9aa5c7c983
commit c4b562326e

View File

@ -70,21 +70,21 @@ Commands:
off 关闭当前终端代理 off 关闭当前终端代理
start 启动 Clash start 启动 Clash
stop 停止 Clash stop 停止 Clash
restart 重新生成配置并重启 restart 重启并自动应用当前配置
status 查看当前状态 status 查看当前状态
generate 仅生成配置,不启动 update 更新到最新版本并自动应用配置
update 拉取当前分支最新代码并重新生成配置、重启服务
update-force 强制覆盖本地修改后更新并重启
mode 查看当前运行模式systemd/script/none mode 查看当前运行模式systemd/script/none
ui 输出 Dashboard 地址 ui 输出 Dashboard 地址
secret 输出当前 secret secret 输出当前 secret
doctor 健康检查 doctor 健康检查
logs [-f] [-n 100] 查看日志 logs [-f] [-n 100] 查看日志
update git pull + 重新生成配置并重启 sub show|update 查看订阅地址 / 更新订阅并应用配置
sub show|update 查看订阅地址 / 重新生成配置并重启
tun status|on|off 查看/启用/关闭 Tun tun status|on|off 查看/启用/关闭 Tun
mixin status|on|off 查看/启用/关闭 Mixin mixin status|on|off 查看/启用/关闭 Mixin
Advanced Commands:
generate 生成配置(调试用,不会启动服务)
Options: Options:
--from-systemd 内部使用,避免 stop 递归调用 systemctl --from-systemd 内部使用,避免 stop 递归调用 systemctl
-h, --help 显示帮助信息 -h, --help 显示帮助信息
@ -102,15 +102,19 @@ read_runtime_config_value() {
local key="$1" local key="$1"
[ -f "$RUNTIME_CONFIG" ] || return 1 [ -f "$RUNTIME_CONFIG" ] || return 1
awk -F': *' -v k="$key" ' awk -v k="$key" '
$1 == k { $0 ~ "^[[:space:]]*" k ":[[:space:]]*" {
gsub("\r", "", $2) line = $0
val = $2 sub("^[[:space:]]*" k ":[[:space:]]*", "", line)
sub(/^"/, "", val) gsub("\r", "", line)
sub(/"$/, "", val)
sub(/^'\''/, "", val) # 去掉首尾引号
sub(/'\''$/, "", val) sub(/^"/, "", line)
print val sub(/"$/, "", line)
sub(/^'\''/, "", line)
sub(/'\''$/, "", line)
print line
exit exit
} }
' "$RUNTIME_CONFIG" ' "$RUNTIME_CONFIG"