Save as mycons.sh then run the command
chmod +x mycons.shFor short access run
ln mycons.sh /bin/myconsSample usage after shortcut
mycons -hlHere is the code for mycons.sh: http://pastebin.com/dBpPMGeY
#HEADER SECTION STARTS
#------------------------------------------------------------------------
#This script is written by Mustafa TURAN (HOME http://mustafaturan.net/
#BLOG http://vpslife.blogspot.com/) to monitor some basic network actions
#and display some user specific information like hd usage...
#you are feel free to distribute re-use in any of your application
#without deleting HEADER section. Also, it licensed with CC 3.0
#Also see: http://creativecommons.org/licenses/by/3.0/
#-------------------------------------------------------------------------
#HEADER SECTION ENDS
#
# Function to print help
#
print_help()
{
echo "Usage: $0 -c -h -l -i";
echo "Where -c clear screen";
echo " -h shows hd usage size";
echo " -l count of connections";
echo " -i show ip list";
return
}
#
# Function to clear the screen
#
cls()
{
clear
return
}
#
# Function to show hd space
#
print_hdspace()
{
echo -n "Total Space Used: "
/usr/bin/du -hs /home/www-data/mustafat #write here your home path
echo "-------------------------------------------------------------------------"
return
}
#
# Function to connection counts
#
print_connection_count()
{
unix_connections=`/bin/netstat -an | grep unix | grep CONNECTED | wc -l` #unix connection count
tcp_connections=`/bin/netstat -an | grep ESTABLISHED | wc -l` #tcp connection count
ftp_connections=`/bin/netstat -an | grep :21\ | grep ESTABLISHED | wc -l` #fcp connection count
ssh_connections=`/bin/netstat -an | grep :22\ | grep ESTABLISHED | wc -l` #ssh connection count
http_connections=`/bin/netstat -an | grep :80\ | grep ESTABLISHED | wc -l` #http connection count
h_out_connections=`/bin/netstat -an | grep :80\ | grep ESTABLISHED | awk '{print $5}' | grep :80 | wc -l` #http requests count (downloading file from somewhere else)
h_in_connections=`/bin/netstat -an | grep :80\ | grep ESTABLISHED | awk '{print $4}' | grep :80 | wc -l` #http response count (someone display a web page from this server)
echo "CONNECTIONS"
echo "-------------------------------------------------------------------------"
echo -e "UNIX\tTCP\tFTP\tSSH\tHTTP\tH-Input\tH-Output"
echo -e "$unix_connections\t$tcp_connections\t$ftp_connections\t$ssh_connections\t$http_connections\t$h_in_connections\t$h_out_connections\n"
return
}
#
# Function to ip list http connections
#
print_iplist()
{
echo "List of ip addresses:"
echo "-------------------------------------------------------------------------"
/bin/netstat -an | grep :80 | grep ESTABLISHED | awk '{print $5}'
return
}
#
# Main procedure start here
#
# Check for sufficent args
#
if [ $# -eq 0 ] ; then
print_help
exit 1
fi
# Now parse command line arguments
#
while getopts chlik: opt
do
case "$opt" in
c) cls;;
h) print_hdspace;;
l) print_connection_count;;
i) print_iplist;;
\?) print_help; exit 1;;
esac
done
No comments:
Post a Comment