LINUX.ORG.RU
ФорумAdmin

скриптик help


0

0

есть скрипт во фряхе

netstat -n|grep ESTABLISHED|awk {'print $4" "$5" "$6'}|grep .80|sort -n|uniq -c|\
awk {'print $3'}|replace '.' ' '|awk {'print $1"."$2"."$3"."$4'}|uniq -c|sort -n|\
awk '{if($1 > 15) print $2}'

который возвращает ИПшники тех кто открыл больше 15 подключени к апача
сижу, и туплю, надо как чтобы каждый ип проходил через другой файл на проверку

чтобы было
/home/test_ip $ip
а не всей кучей они туда лезли

------
повиду перепил пива под день админа..хз..додумать немогу..хелп
PS капча gааmes ....реально надо поиграть

anonymous

повиду сильно я перепил...щас поглядел на скрипт, его чутка оптимизировать мона =))....ну эт потом, а щас вопрос еще открыт

anonymous
()

может я не понял, что те надо, но не просто цикл ли тебе нужен??

for ip in `тут любой код, который возвратит список`; do /home/test_ip $ip; done

примитивный пример:
for ip in `ls`; do du -sh $ip; done
выведет размер всех файлов и каталогов в текущем
конечно, du -sh ./* проще :)), но это ж пример

shlag
()

#!/bin/sh

ip_list=`netstat -n|grep ESTABLISHED|awk {'print $4" "$5" "$6'}|grep .80|sort -n|uniq -c|\
awk {'print $3'}|replace '.' ' '|awk {'print $1"."$2"."$3"."$4'}|uniq -c|sort -n|\
awk '{if($1 > 15) print $2}' `

for ip in $ip_list
do
echo $ip; #тут команда, для работы с $ip
done


help_us
()
Ответ на: комментарий от help_us

или как-то так:
netstat -n|grep ESTABLISHED|awk {'print $4" "$5" "$6'}|grep .80|sort -n|uniq -c|\
awk {'print $3'}|replace '.' ' '|awk {'print $1"."$2"."$3"."$4'}|uniq -c|sort -n|\
awk '{if($1 > 15) print $2}' | xargs /path/to/test_script

zhiltsov
()

netstat -n|grep ESTABLISHED|awk {'print $4" "$5" "$6'}|grep .80|sort -n|uniq -c|\ 
awk {'print $3'}|replace '.' ' '|awk {'print $1"."$2"."$3"."$4'}|uniq -c|sort -n|\ 
awk '{if($1 > 15) print $2}' | while read ip; do /home/test_ip $ip; done

spirit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.