IPFILE=${IPDIR}/globalip.txt
-ECHO=/bin/echo
-LOGGER=/usr/bin/logger
-CAT=/bin/cat
-TEST=/usr/bin/test
-WGET=/usr/bin/wget
-
IPCHECKSERVER=ifconfig.io
-NOWIP=$(${WGET} -q -O - ${IPCHECKSERVER})
+NOWIP=$(wget -q -O - https://${IPCHECKSERVER})
-# ガード節:NOWIPが空なら、以後の判定をせずに終了する
-if ${TEST} -z "${NOWIP}"; then
- ${ECHO} "Failed to retrieve Global IP. Exiting." | ${LOGGER} -p local2.err
- exit 1
+if test -z "${NOWIP}"; then
+ printf "Failed to retrieve Global IP. Exiting." >&2
+ exit 1
fi
-if ${TEST} -n "${NOWIP}" -a -s ${IPFILE}; then
- CACHEIP=$(${CAT} ${IPFILE})
+if test -n "${NOWIP}" -a -s ${IPFILE}; then
+ CACHEIP=$(cat ${IPFILE})
else
CACHEIP=0.0.0.0
fi
-if ${TEST} "${NOWIP}" != "${CACHEIP}"; then
- ${ECHO} "Global IP address changed from ${CACHEIP} to ${NOWIP}." | ${LOGGER} -p local2.info
- ${ECHO} ${NOWIP} >${IPFILE}
+if test "${NOWIP}" != "${CACHEIP}"; then
+ printf "Global IP address changed from %s to %s\n" ${CACHEIP} ${NOWIP}
+ printf "%s\n" ${NOWIP} >${IPFILE}
${BINDIR}/mydns_ip_update
else
- ${ECHO} "Global IP address does NOT change from ${NOWIP}." | ${LOGGER} -p local2.debug
+ printf "Global IP address does NOT change from %s.\n" ${NOWIP}
fi
-#!/bin/bash
-# MyDNSへログインする
-
-ECHO=/usr/bin/echo
-WGET=/usr/bin/wget
-W3M=/usr/bin/w3m
-SED=/usr/bin/sed
-TR=/usr/bin/tr
-LOGGER=/usr/bin/logger
-XARGS=/usr/bin/xargs
-
-. ~/.mydns
-
-for i in $(seq 0 ${#my_array[@]})
-do
- ${WGET} -q -O - http://${MYDNSUSER[i]}:${MYDNSPWD[i]}@ipv4.mydns.jp/login.html 2>&1 | ${W3M} -dump -T text/html | ${SED} 's/^ *//g' | ${TR} '\n' ' ' | ${SED} 's/ *: */:/g' | ${XARGS} ${ECHO} "${DOMAIN[i]} on MyDNS.JP - " | ${LOGGER} -p local2.info
-done
+while read -r domain user password; do
+ result=$(curl -s "https://${user}:${password}@ipv4.mydns.jp/login.html" | grep -E 'Login and IP address notify|login_status|MASTERID|REMOTE ADDRESS|ACCESS DAYTIME' | tr '\n' ' ' | sed 's/<[^>]*>//g; s/ {2,}/ /g; s/ *: */:/g')
+ printf "%s on MyDNS.JP:: %s\n" "${domain}" "${result}"
+done < ~/.mydns