SHELL伪多进程

主控脚本

#!/bin/bash

#[email protected]
F=”`pwd`/url”  #数据文件,一行一个域名
tmpfile=$$.fifo

mkfifo $tmpfile

exec 4<>$tmpfile

rm $tmpfile
thread=200  #最大进程数量

{
for j in `seq $thread`
do
echo;
done
} >&4

for i in `cat $F`
do

  read

  ( ./scan $i; echo >&4 ) &   #启动任务脚本

done <&4

wait

exec 4>&-

任务脚本scan:

#!/bin/sh
LOG=”`pwd`/r.log”  #日志
        if curl -I “http://$1″|grep -i iis ;then
                echo $1 >>$LOG
        else
                echo $1 >>$LOG.bad
        fi

 上面两个脚本,使用多进程的方式,执行对一个文件内所有域名记录的扫描,以粗略判断目标服务器是否为WINDOWS的WEB服务器。

大概算是一个比较简单的SHELL多进程实现

 

转载http://drdr.nix-adm.org/?p=68

你可能感兴趣的:(shell,职场,多进程,休闲)