File: //usr/bin/wifi-status
#!/bin/sh
#
# wifi-status - monitor a wireless network connection
#
# Copyright (C) 2003-2014 Dustin Kirkland <kirkland@ubuntu.com>
#
# Authors:
# Dustin Kirkland <kirkland@ubuntu.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
if [ -z "$1" ]; then
dev=$(iwconfig 2>/dev/null | grep '802.11' | tail -n1 | awk '{print $1}')
else
dev="$1"
fi
if [ -z "$TMUX" ]; then
watch -n1 "iwconfig $dev; ifconfig $dev; route -n; echo; (grep $dev: /var/log/syslog | tail -n 10 | sort -r); echo; ping -I $dev -c 1 8.8.8.8"
else
tmux new-window -n wifi-status "watch -c iwconfig $dev \| ccze -A" \; \
split-window -v "watch -c ifconfig $dev \| ccze -A" \; \
split-window -v "watch -c route -n \| ccze -A" \; \
split-window -h "ping -I $dev 8.8.8.8" \; \
split-window -v "watch -c grep $dev: /var/log/syslog \| tail -n 10 \| sort -r \| ccze -A" \; \
select-layout tiled
fi