daniel.uramg
(usa Outra)
Enviado em 17/09/2010 - 15:19h
vmmelo quase deu certo, TMP_IPS_EXCL=$(mktemp) aqui não internpretou, deve ser porque o interpretador shell do BFW é o sh, mas nisso fiz uma pequena alteração:
#!/bin/sh
TMP_IPS_EXCL="/teste"
# salvando os IPs que existem no passwd no arquivo temporario
cat /usr/local/easycaptive/config/passwd | cut -f 3 -d: > $TMP_IPS_EXCL
while read LINHA; do
IP_V=$(echo $LINHA | cut -f 1 -d" ")
if grep -q "$IP_V" $TMP_IPS_EXCL; then
# o IP existe no passwd: ignorando...
continue
else
# o IP nao existe no passwd: mostrando
echo $IP_V
fi
done < /proc/net/arp
Assim o script me retorna os IPs que não estão no passwd, porem ele tinha que filtrar tambem somente os IPs que estão na $IF_LOCAL (grep $IF_LOCAL), e tambem não mostrtar "IP" (grep -v IP), tentei colocar esses GREP na frente do < /proc/net/arp mas nao obitve exito
o negocio vai rodar dentro de um CGI que ja tenho, esse segundo script ai que postei que é a parte da função. nesse esquema aqui vou precisar fazer um script separado e o CGI chamar ele na função while read, ou tem como eu jogar os valores finais pra uma variavel, pra ficar tudo dentro do CGI?
Obrigado pela ajuda!