#!/bin/sh CONNECT_SWITCH=/root/bin/connect_switch.tcl PROGNAME=$(basename $0) # formating functions _echo () { [ "$(echo -e '')" ] && echo $@ || echo -e $@; } title () { _echo "\033[0;1m$*\033[0;0m"; } pass () { _echo "\033[1;32m$*\033[0;0m"; } warn () { _echo "\033[1;33m$*\033[0;0m"; } fail () { _echo "\033[1;31m$*\033[0;0m"; } usage () { echo "usage: $PROGNAME [-h] [-s host]" echo " -h: help message" echo " -s host: switch hostname" exit $@ } [ -x $CONNECT_SWITCH ] || exit 0 # argument processing while [ $# -gt 0 ]; do case "$1" in -h) usage 0;; -s) shift; SWITCH=$1;; esac shift done [ "$SWITCH" ] || usage 1 ping -c 1 -w 1 $SWITCH 2>&1 1>/dev/null || exit 1 $CONNECT_SWITCH $SWITCH -c 'show platform chassis status' | \ awk '/air/ { sub(/\r/, ""); print "'$SWITCH': ", $3, $4, $2 }' | \ logger -t switch