#! /usr/bin/env bash
# 检查 Surge 连接状态的函数
check_surge_status() {
# 获取 Surge 的网络服务名称
local surge_service=$(networksetup -listallnetworkservices| grep Surge)
# 获取 Surge 的网络服务状态
local surge_status=$(networksetup -showpppoestatus "$surge_service")
if [ "$surge_status" = "connected" ]; then
echo 0
else
echo 1
fi
}
if [ $(check_surge_status) -eq 0 ]; then
echo "
✅ Surge 已连接"
else
# echo "
❌ Surge 未连接"
echo "
🔄 尝试重载配置"
/Applications/
Surge.app/Contents/Applications/surge-cli reload
# echo "重载配置完成"
sleep 2
if [ $(check_surge_status) -eq 0 ]; then
echo "
✅ Surge 已连接"
else
# echo "
❌ Surge 未连接"
echo "
🔄 尝试重启 Surge"
/Applications/
Surge.app/Contents/Applications/surge-cli stop
open -a Surge
osascript -e 'tell application "Surge" to set visible of its first window to false'
sleep 2
if [ $(check_surge_status) -eq 0 ]; then
echo "
✅ Surge 已连接"
else
echo "
❌ Surge 未连接"
fi
fi
fi