From 2046c5b01004dcddbc8924ceccd9005e20e57f1f Mon Sep 17 00:00:00 2001 From: juewuy Date: Sun, 7 Dec 2025 11:58:37 +0800 Subject: [PATCH] =?UTF-8?q?~=E7=A7=BB=E9=99=A4=E5=AF=B9=E9=AB=98=E7=89=88?= =?UTF-8?q?=E6=9C=ACopenwrt=E7=9A=84DDNS=E8=84=9A=E6=9C=AC=E6=94=AF?= =?UTF-8?q?=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/menu.sh | 2 +- tools/ShellDDNS.sh | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/scripts/menu.sh b/scripts/menu.sh index 8e6fdb4..6e4953c 100644 --- a/scripts/menu.sh +++ b/scripts/menu.sh @@ -2060,7 +2060,7 @@ tools() { [ -f /etc/firewall.user ] && echo -e " 4 \033[32m配置\033[0m外网访问SSH" [ -x /usr/sbin/otapredownload ] && echo -e " 5 \033[33m$mi_update\033[0m小米系统自动更新" [ "$systype" = "mi_snapshot" ] && echo -e " 6 小米设备软固化SSH ———— \033[$mi_autoSSH_type \033[0m" - [ -f /etc/config/ddns ] && echo -e " 7 配置\033[32mDDNS服务\033[0m(需下载相关脚本)" + [ -d /etc/ddns ] && echo -e " 7 配置\033[32mDDNS服务\033[0m(需下载相关脚本)" [ "$systype" = "mi_snapshot" ] && echo -e " 8 小米设备Tun模块修复 ———— \033[$mi_tunfix \033[0m" echo ----------------------------------------------- echo -e " 0 返回上级菜单" diff --git a/tools/ShellDDNS.sh b/tools/ShellDDNS.sh index 062d68a..6cb018b 100644 --- a/tools/ShellDDNS.sh +++ b/tools/ShellDDNS.sh @@ -4,7 +4,7 @@ ddns_dir=/etc/config/ddns tmp_dir=/tmp/ddns_$USER -[ ! -f "$ddns_dir" ] && echo -e "本脚本依赖OpenWrt内置的DDNS服务,当前设备无法运行,已退出!" && exit 1 +[ ! -d $ddns_dir -o ! -d /etc/ddns ] && echo -e "本脚本依赖OpenWrt内置的DDNS服务,当前设备无法运行,已退出!" && exit 1 echo ----------------------------------------------- echo -e "\033[30;46m欢迎使用ShellDDNS!\033[0m" echo -e "TG群:\033[36;4mhttps://t.me/ShellCrash\033[0m" @@ -102,7 +102,7 @@ network_type() { } rev_service() { - enabled=$(uci show ddns.$service | grep 'enabled' | awk -F "\'" '{print $2}') + enabled=$(uci show ddns.$service | grep 'enabled' | awk -F "=" '{print $2}' | tr -d "'\"") [ "$enabled" = 1 ] && enabled_b="停用" || enabled_b="启用" echo ----------------------------------------------- echo -e " 1 \033[32m立即更新\033[0m" @@ -118,10 +118,10 @@ rev_service() { /usr/lib/ddns/dynamic_dns_updater.sh -S $service start >/dev/null 2>&1 & sleep 3 elif [ "$num" = 2 ]; then - domain=$(uci show ddns.$service | grep 'domain' | awk -F "\'" '{print $2}') - username=$(uci show ddns.$service | grep 'username' | awk -F "\'" '{print $2}') - password=$(uci show ddns.$service | grep 'password' | awk -F "\'" '{print $2}') - service_name=$(uci show ddns.$service | grep 'service_name' | awk -F "\'" '{print $2}') + domain=$(uci show ddns.$service | grep 'domain' | awk -F "=" '{print $2}' | tr -d "'\"") + username=$(uci show ddns.$service | grep 'username' | awk -F "=" '{print $2}' | tr -d "'\"") + password=$(uci show ddns.$service | grep 'password' | awk -F "=" '{print $2}' | tr -d "'\"") + service_name=$(uci show ddns.$service | grep 'service_name' | awk -F "=" '{print $2}' | tr -d "'\"") uci delete ddns.$service set_ddns elif [ "$num" = 3 ]; then @@ -142,9 +142,9 @@ load_ddns() { for service in $(cat $tmp_dir); do #echo $service >>$tmp_dir nr=$((nr + 1)) - enabled=$(uci show ddns.$service 2>/dev/null | grep 'enabled' | awk -F "\'" '{print $2}') - domain=$(uci show ddns.$service 2>/dev/null | grep 'domain' | awk -F "\'" '{print $2}') - local_ip=$(cat /var/log/ddns/$service.log | grep 'Local IP' | tail -1 | awk -F "\'" '{print $2}') + enabled=$(uci show ddns.$service 2>/dev/null | grep 'enabled' | awk -F "=" '{print $2}' | tr -d "'\"") + domain=$(uci show ddns.$service 2>/dev/null | grep 'domain' | awk -F "=" '{print $2}' | tr -d "'\"") + local_ip=$(cat /var/log/ddns/$service.log 2>/dev/null | grep 'Local IP' | tail -1 | awk -F "=" '{print $2}' | tr -d "'\"") echo -e " $nr $domain $enabled $local_ip" done echo -e " $((nr + 1)) 添加DDNS服务"