about summary refs log tree commit diff stats
path: root/home-manager/config/yambar/scripts/pingtest
blob: 2b5f99983ed77052b8892bdb7ab89e78ed596a3e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/bin/sh
# Test for connectivity with ping

Timer=${1:-120}   # Number of seconds to retest
Timer2=${2:-10}   # Number of seconds to retest if connection fails
IP=${3:-'8.8.8.8'}   # IP address to test, defaults to Google
PCount=${4:-3}   # Number of pings to send

# Main loop
while true; do

  # Pings the IP address for five times
  PINGSTR=$(ping $IP -c $PCount -q)
  # Use text formatting to get min/max ms delays
  MED=$(echo $PINGSTR | sed 's/min\/avg\/max\/mdev = /\n/g' | tail -n 1 | sed 's/\//\t/g' | cut -f2)

  if [[ "$MED" == "" ]]; then
      echo "med|string|No connection"
      echo ""
      sleep $Timer2
  else
      echo "med|string|$MED ms"
      echo ""
      sleep $Timer
  fi

done