fix: 修复 select_services 返回值问题
This commit is contained in:
@@ -431,8 +431,10 @@ restart_smartdns() {
|
|||||||
|
|
||||||
# ============ 服务选择菜单 ============
|
# ============ 服务选择菜单 ============
|
||||||
|
|
||||||
|
SELECTED_SERVICES=()
|
||||||
|
|
||||||
select_services() {
|
select_services() {
|
||||||
local selected=()
|
SELECTED_SERVICES=()
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo -e "${YELLOW}选择要解锁的服务(可多选,空格分隔):${NC}"
|
echo -e "${YELLOW}选择要解锁的服务(可多选,空格分隔):${NC}"
|
||||||
@@ -452,19 +454,17 @@ select_services() {
|
|||||||
|
|
||||||
for choice in $choices; do
|
for choice in $choices; do
|
||||||
case $choice in
|
case $choice in
|
||||||
1) selected+=("stream") ;;
|
1) SELECTED_SERVICES+=("stream") ;;
|
||||||
2) selected+=("ai") ;;
|
2) SELECTED_SERVICES+=("ai") ;;
|
||||||
3) selected+=("shorts") ;;
|
3) SELECTED_SERVICES+=("shorts") ;;
|
||||||
4) selected+=("spotify") ;;
|
4) SELECTED_SERVICES+=("spotify") ;;
|
||||||
5) selected+=("game") ;;
|
5) SELECTED_SERVICES+=("game") ;;
|
||||||
6) selected+=("chatgpt") ;;
|
6) SELECTED_SERVICES+=("chatgpt") ;;
|
||||||
7) selected+=("claude") ;;
|
7) SELECTED_SERVICES+=("claude") ;;
|
||||||
8) selected=("stream" "ai" "shorts" "spotify" "game" "chatgpt" "claude"); break ;;
|
8) SELECTED_SERVICES=("stream" "ai" "shorts" "spotify" "game" "chatgpt" "claude"); break ;;
|
||||||
*) echo -e "${RED}无效选项: $choice${NC}" ;;
|
*) echo -e "${RED}无效选项: $choice${NC}" ;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "${selected[@]}"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# ============ 主菜单 ============
|
# ============ 主菜单 ============
|
||||||
@@ -497,8 +497,8 @@ menu_unlocker() {
|
|||||||
configure_firewall_unlocker
|
configure_firewall_unlocker
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
local services=$(select_services)
|
select_services
|
||||||
for svc in $services; do
|
for svc in "${SELECTED_SERVICES[@]}"; do
|
||||||
add_service_to_sniproxy "$svc"
|
add_service_to_sniproxy "$svc"
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
@@ -558,8 +558,8 @@ menu_client() {
|
|||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
local services=$(select_services)
|
select_services
|
||||||
for svc in $services; do
|
for svc in "${SELECTED_SERVICES[@]}"; do
|
||||||
configure_smartdns_unlocker "$unlocker_ip" "$svc"
|
configure_smartdns_unlocker "$unlocker_ip" "$svc"
|
||||||
done
|
done
|
||||||
|
|
||||||
@@ -568,7 +568,7 @@ menu_client() {
|
|||||||
echo ""
|
echo ""
|
||||||
echo -e "${GREEN}配置完成!${NC}"
|
echo -e "${GREEN}配置完成!${NC}"
|
||||||
echo "解锁机: $unlocker_ip"
|
echo "解锁机: $unlocker_ip"
|
||||||
echo "分流服务: $services"
|
echo "分流服务: ${SELECTED_SERVICES[*]}"
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
local current_unlocker=$(grep "address /netflix.com/" /etc/smartdns/smartdns.conf 2>/dev/null | head -1 | awk -F'/' '{print $3}')
|
local current_unlocker=$(grep "address /netflix.com/" /etc/smartdns/smartdns.conf 2>/dev/null | head -1 | awk -F'/' '{print $3}')
|
||||||
@@ -580,8 +580,8 @@ menu_client() {
|
|||||||
unlocker_ip=${unlocker_ip:-$current_unlocker}
|
unlocker_ip=${unlocker_ip:-$current_unlocker}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local services=$(select_services)
|
select_services
|
||||||
for svc in $services; do
|
for svc in "${SELECTED_SERVICES[@]}"; do
|
||||||
configure_smartdns_unlocker "$unlocker_ip" "$svc"
|
configure_smartdns_unlocker "$unlocker_ip" "$svc"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user