Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

第一个domain相当于是完整的域名,如果是要获取单个域名的话,这里就是aa.$domains

备份脚本bak.sh

Code Block
#!/bin/bash
dnsname=192.168.131.100219:5380
username=admin
password=Uenpay2023Uenpay@2019
tokenname=`curl -s "http://$dnsname/api/user/createToken?user=$username&pass=$password&tokenName==zhengyu"|jq .token|sed 's#"##g'`
domainlist=(
  hkrt.cn
  uenpayhzmohai.com
  weifumaouenpay.com
  5ubpxscashier.com
  zhuduanzhengyu1992.vipcn
  merrymatezhuduan.cnvip
)
 
for domains in ${domainlist[@]}
do
  status=`curl -s "http://$dnsname/api/zones/records/get?token=$tokenname&domain=$domains&zone=$domains&listZone=true"|jq .status|sed 's#"##g'`
  if [ $status = "error" ];then
    echo "$domains 不存在不存在,请登陆控制台确认"
    continue
  elif [ $status = "ok" ];then
    ##备份A记录
    curlecho -s "http://$dnsname/api/zones/records/get?token=$tokenname&domain=$domains&zone=$domains&listZone=true"|jq .response.records |jq  -r '.[]' |jq .name,.type,.rData.ipAddress|sed 's/"//g'|paste - - - |awk '$2 == "A" { print }' > $domains-"##$domains A记录" >$domains-`date +%F`.txt
    ##备份CNAME记录
    curl -s "http://$dnsname/api/zones/records/get?token=$tokenname&domain=$domains&zone=$domains&listZone=true"|jq .response.records |jq  -r '.[]' |jq .name,.type,.rData.cnameipAddress|sed 's/"//g'|paste - - - |awk '$2 == "CNAMEA" { print $3, $1 }' >> $domains-`date +%F`.txt
    else
    exit 1
  fi
done

备份的文件格式如下

...