From c4bdd18195ee97564540323cdb010a754d73626b Mon Sep 17 00:00:00 2001 From: juewuy Date: Sun, 8 Feb 2026 19:14:45 +0800 Subject: [PATCH] =?UTF-8?q?~=E4=BF=AE=E5=A4=8Dddns=E5=B7=A5=E5=85=B7?= =?UTF-8?q?=E7=9A=84=E4=B8=80=E4=BA=9Bbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/menus/ddns.sh | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/scripts/menus/ddns.sh b/scripts/menus/ddns.sh index 933f4bf9..b1d97a87 100644 --- a/scripts/menus/ddns.sh +++ b/scripts/menus/ddns.sh @@ -59,16 +59,21 @@ set_ddns() { } set_ddns_service() { services_dir=/etc/ddns/"$serv" + [ -s "$services_dir" ] || services_dir=/etc/ddns/services [ -s "$services_dir" ] || services_dir=/usr/share/ddns/list + [ -s "$services_dir" ] || { + echo -e "\033[33m未找到DDNS列表文件,尝试在线获取……\033[0m" + ddns service update >/dev/null || echo -e "\033[31m下载失败,请重试!\033[0m" + } echo ----------------------------------------------- echo -e "\033[32m请选择服务提供商\033[0m" - cat "$services_dir" | grep -v '^#' | awk '{print " "NR" " $1}' - nr=$(cat "$services_dir" | grep -v '^#' | wc -l) + cat "$services_dir" | grep -vE '^#|^[[:space:]]*$' | awk '{print " "NR" " $1}' + nr=$(cat "$services_dir" | grep -vE '^#|^[[:space:]]*$' | wc -l) read -p "请输入对应数字 > " num if [ -z "$num" ]; then i= elif [ "$num" -gt 0 -a "$num" -lt $nr ]; then - service_name=$(cat "$services_dir" | grep -v '^#' | awk '{print $1}' | sed -n "$num"p | sed 's/"//g') + service_name=$(cat "$services_dir" | grep -vE '^#|^[[:space:]]*$' | awk '{print $1}' | sed -n "$num"p | sed 's/"//g') service=$(echo $service_name | sed 's/\./_/g') set_ddns else