Browse Source

improve id parse

Locate only the outer most "id" property
Blfrg 5 years ago
parent
commit
eb49127b9e
1 changed files with 1 additions and 1 deletions
  1. 1 1
      dnsapi/dns_me.sh

+ 1 - 1
dnsapi/dns_me.sh

@@ -114,7 +114,7 @@ _get_root() {
     fi
 
     if _contains "$response" "\"name\":\"$h\""; then
-      _domain_id=$(printf "%s\n" "$response" | _egrep_o "\"id\":[0-9]+}$" | head -n 1 | cut -d : -f 2 | tr -d '}')
+      _domain_id=$(printf "%s\n" "$response" | cut -c 2- | head -c -2 | sed 's/{.*}//' | sed -r 's/^.*"id":([0-9]+).*$/\1/')
       if [ "$_domain_id" ]; then
         _sub_domain=$(printf "%s" "$domain" | cut -d . -f 1-$p)
         _domain="$h"