shell script

This commit is contained in:
2026-05-22 15:21:21 +08:00
parent b84371b88b
commit d3594007ad
62 changed files with 8965 additions and 0 deletions
+79
View File
@@ -0,0 +1,79 @@
#!/usr/bin/env bash
clear
# ====== CONFIG (edit here once) ======
DOMAIN="domain.com"
API_KEY="YOUR_API_KEY"
SECRET_API_KEY="YOUR_SECRET_API_KEY"
TTL="600"
TYPE="A"
API_BASE="https://api.porkbun.com/api/json/v3/dns"
echo "====== Porkbun DNS Manager ======"
echo "Domain: $DOMAIN"
echo ""
echo "Choose an action:"
echo "1) Update subdomain IP"
echo "2) Create new subdomain"
echo ""
read -p "Enter choice (1 or 2): " ACTION
case $ACTION in
# Update existing record
1)
read -p "Enter subdomain to update: " SUBDOMAIN
read -p "Enter new IP address: " IP
echo ""
echo "Updating ${SUBDOMAIN}.${DOMAIN} -> ${IP}"
read -p "Proceed? (y/n): " CONFIRM
[[ "$CONFIRM" != "y" ]] && echo "Cancelled." && exit 1
RESPONSE=$(curl -s -X POST \
"$API_BASE/editByNameType/${DOMAIN}/${TYPE}/${SUBDOMAIN}" \
-H "Content-Type: application/json" \
-d "{
\"secretapikey\": \"${SECRET_API_KEY}\",
\"apikey\": \"${API_KEY}\",
\"content\": \"${IP}\",
\"ttl\": \"${TTL}\"
}")
echo ""
echo "API Response:"
echo "$RESPONSE"
;;
# Create new subdomain
2)
read -p "Enter new subdomain name: " SUBDOMAIN
read -p "Enter IP address: " IP
echo ""
echo "Creating ${SUBDOMAIN}.${DOMAIN} -> ${IP}"
RESPONSE=$(curl -s -X POST \
"$API_BASE/create/${DOMAIN}" \
-H "Content-Type: application/json" \
-d "{
\"secretapikey\": \"${SECRET_API_KEY}\",
\"apikey\": \"${API_KEY}\",
\"name\": \"${SUBDOMAIN}\",
\"type\": \"${TYPE}\",
\"content\": \"${IP}\",
\"ttl\": \"${TTL}\"
}")
echo ""
echo "API Response:"
echo "$RESPONSE"
;;
*)
echo "Invalid choice."
exit 1
;;
esac