1.查詢某個網段的機器指定的Port有沒有開
tmpfile=/tmp/tmp$$
vnetd=38
i=0
vport=5900
while [ $i -lt 255 ] ;
do
ww=`ping 190.187.$vnetd.$i 4 3 |grep "alive" |wc -l`
if [ $ww -gt 0 ] ; then
echo ------alive------190.187.$vnetd.$i
echo open $BCKSERVERIP $vport >$tmpfile
echo >>$tmpfile
echo quit >>$tmpfile
num=`cat $tmpfile |telnet |grep "Escape character is" |wc -l`
rm $tmpfile
if [ $num -eq 1 ] ; then
echo ------port $vport is open------190.187.$vnetd.$i
fi
fi
i=`expr $i + 1`
done2.查詢指定機器share出來的目錄,另外一個文件省略.
#!/bin/sh
vstime=3
cat getshare.lst | awk -F, '{print $1,$2,$3}'| while read vip vuser vpwd
do
(sleep $vstime
echo $vuser
sleep $vstime
echo $vpwd
sleep $vstime
echo /usr/sbin/share
sleep $vstime
echo exit
sleep 1) |telnet $vip > /tmp/$vip.log
if [ -f /tmp/$vip.log ]; then
vflag=0
vstr=""
for x in `cat /tmp/$vip.log`
do
if [ `echo $x |grep "# /usr/sbin/share" |wc -l` -eq 1 ]; then
vflag=1
echo $vip===$vflag
fi
if [ `echo $x |grep "# exit" |wc -l` -eq 1 ]; then
vflag=0
fi
if [ $vflag -eq 1 ]; then
vstr=$vstr$x
fi
done
else
vstr=login failed
fi
echo $vip,$vstrdone
3.如果OS上面有CPU利用率超過50%的進程,刪除之.
#!/usr/bin/ksh
i=0
for x in `ps -efo pid,pcpu,comm | grep f45runw`
do
m=`expr $i % 3`
case $m in
0)
pid=$x
;;
1)
pcpu=$x
;;
2)
if [ $pcpu -ge 50 ]
then
kill -9 $pid
fi
;;
esac
i=`expr $i + 1`
done
本文提供三种实用脚本:批量检测网段内主机特定端口开放情况;查询指定主机共享目录;自动终止CPU占用率超过50%的进程。
178

被折叠的 条评论
为什么被折叠?



