#!/bin/bash #usage ./kill.ftp.user something that would be in this line: #23689 ? S 0:00 ftpd: localhost: someone: IDLE #where the stuff is: #PID tty sleep time ftpd source: login : activity #ex.: #./kill.ftp.user --kill IDLE #./kill.ftp.user --kill 1.2.3.4 case "$1" in "") echo "Missing option" echo "Usage kill.ftp.user [--list [mask]] " --kill mask ;; "--help") echo "Usage kill.ftp.user [--list [pattern]] " --kill mask ;; "--list") echo -e "current ftpwho:\n" if [ "$2" = "" ] ; then ftpwho else if [ "`echo $2|grep "-"`" != "" ];then echo "ERROR: invalid mask" else ftpwho | grep "$2" fi fi echo "" ;; "--kill") echo -e "current ftpwho:\n" ftpwho echo "" if [ "$2" = "" ];then echo "ERROR: mask required" else if [ "`echo $2|grep "-"`" != "" ];then echo "ERROR: invalid mask" else echo "killing ftp user with mask ""$2""" kill `ftpwho |grep $2| cut -d " " -f 1` fi fi esac