~修复ddns工具的一些bug

This commit is contained in:
juewuy
2026-02-08 19:14:45 +08:00
parent 7f0b0fa870
commit c4bdd18195

View File

@@ -59,16 +59,21 @@ set_ddns() {
} }
set_ddns_service() { set_ddns_service() {
services_dir=/etc/ddns/"$serv" 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" ] || 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 -----------------------------------------------
echo -e "\033[32m请选择服务提供商\033[0m" echo -e "\033[32m请选择服务提供商\033[0m"
cat "$services_dir" | grep -v '^#' | awk '{print " "NR" " $1}' cat "$services_dir" | grep -vE '^#|^[[:space:]]*$' | awk '{print " "NR" " $1}'
nr=$(cat "$services_dir" | grep -v '^#' | wc -l) nr=$(cat "$services_dir" | grep -vE '^#|^[[:space:]]*$' | wc -l)
read -p "请输入对应数字 > " num read -p "请输入对应数字 > " num
if [ -z "$num" ]; then if [ -z "$num" ]; then
i= i=
elif [ "$num" -gt 0 -a "$num" -lt $nr ]; then 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') service=$(echo $service_name | sed 's/\./_/g')
set_ddns set_ddns
else else