home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh
-
- # @(#)@ show_status 1.9 show system activity
- # @(#)@ Copyright 1988 by Johan Vromans - Multihouse Research
- # Contributed to Public Domain by the Author, Feb 15, 1988
-
- # This is a little shell script which repeatedly displays the current
- # system activity, filtering out unneeded entries.
- #
- # Display uses tty enhancements, if present.
- #
- # Usage: show_status [ sleep-value ]
-
- title="Multihouse USENET Gateway" # descriptive title of this system
-
- trap "rm -f /tmp/tmpa$$; trap '' 0; exit" 0 1 2 3 15
-
- # get display interval
- sleep="$1"
- if [ "$sleep" = "" ]
- then
- sleep=20
- fi
-
- # get terminal enhancements
- home=`tput home`
- home=${home:-`tput khome`}
- home=${home:-`tput clear`}
- clear=`tput ed`
- cln=`tput el`
- so=`tput smso`
- se=`tput rmso`
-
- # please keep the next line intact
- echo "$home`tput clear`show_status version 1.9 - Multihouse Research"
-
- # build top display line
- line=`ps -f | line | sed \
- -e "y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/" \
- -e "s/^\(.....................\).../\1/"`
- line="$so$line $se"
-
- # other relevant data
- pid=$$
- set `uname -a` # KEEP LAST - SCRIPT USES $1, $2 and so on ...
-
- # and here we go ... until interrupted
- while [ a = a ]
- do
- echo "$home$so $2 $1/$3 `date` $title $se$cln\n"
- # don't use a pipe - unwanted processes show up!
- ps -ef > /tmp/tmpa$$
- echo "$line"
- sort +1n -2 < /tmp/tmpa$$ | sed \
- -e "/ -sh/d" \
- -e "/ -csh/d" \
- -e "/ -ksh/d" \
- -e "1d" \
- -e "/ $pid /d" \
- -e "\./etc/getty.d" \
- -e "s/^\(.....................\).../\1/" \
- -e "s/\$/$cln/"
- echo "$clear\c"
-
- sleep $sleep
- done
-