Improved variable management

This commit is contained in:
Michele Cereda
2022-04-18 01:11:56 +02:00
parent 8dc9f14e8a
commit a202013a33
6 changed files with 33 additions and 28 deletions

View File

@@ -1,21 +1,21 @@
#!/usr/bin/env bash
interface="wlan0"
: "${INTERFACE:='wlan0'}"
max_retries=3
timeout=1
: ${MAX_RETRIES:=3}
: ${TIMEOUT:=1}
log_path="$(dirname $0)/$(basename $0).log"
log_prefix="$(date +'%Y-%m-%d %T')"
: "${LOG_PATH=$(dirname $0)/$(basename $0).log}"
: "${LOG_PREFIX=$(date +'%Y-%m-%d %T')}"
i=0
until [ $i -eq $max_retries ]; do
until [ $i -eq $MAX_RETRIES ]; do
let "i++"
if nc -Nz -w $timeout www.google.com 443; then
echo "$log_prefix" "connection is OK" >> $log_path
if nc -Nz -w $TIMEOUT www.google.com 443; then
echo "$LOG_PREFIX" "connection is OK" >> $LOG_PATH
break
else
echo "$log_prefix" "no connection, resetting interface" >> $log_path
sudo ifconfig wlan0 down && sudo ifconfig wlan0 up
echo "$LOG_PREFIX" "no connection, resetting interface" >> $LOG_PATH
sudo ifconfig $INTERFACE down && sudo ifconfig $INTERFACE up
fi
done