1. Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, também
fabianox11usa Fedora
Post recolhido
Enviado em 24/03/2020 - 17:39h
Boa tarde a todos,
Gostaria de uma ajuda para formular uma saida de script deste forma:
Tenho um arquivo que nele possui o nome da estação+ip separado por espaço (Ex.: Estacao1 192.168.20.31). No script, consigo realizar um ping separando por colunas com o awk. O que precisaria é que a cada resposta do ping (positiva ou negativa), ele traga o nome+ip. Segue abaixo o script utilizado:
VAR=$(cat arq.txt | awk '{print $2}')
for x in $VAR
do
ok=`ping -c 1 $x | grep transmitted, | cut -d" " -f4`
if [ $ok = 1 ]; then
echo -e "\nMáquina $x ON"
else
echo -e "\nMáquina $x OFF"
fi
done
Este script já modifiquei ele por algumas vezes para tentar obter o resultado mas sem sucesso. OBS: este script foi retirado daqui mesmo do VOL de um colega que não peguei o nome mas agradeço a ideia dele!!!
2. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, ta
RogerDezusa Outra
Post recolhido
Enviado em 25/03/2020 - 15:49h
o ping já vai dar uma mensagem de erro informando qual ping deu erro.
mas pelo visto você quer gerenciar o prórios erros.
da forma que vc está fazendo, não está pensando caso o ping saia com um outro erro que não seja o 1..
awk '{print $2}' "arq.txt" |
while read ip; do
if ping -c 1 $ip &>/dev/null; then
echo -e "\nMáquina $ip ON"
else
echo -e "\nMáquina $ip OFF" 1>&2
fi
done
ou
#dessa forma mostra todos os tipos de erros do ping e ignorar os ips que obtiveram sucesso
awk '{print $2}' "arq.txt" |
while read ip; do
ping -c 1 $ip 1>/dev/null #&& echo 'Máquina $ip OK'
done
o ping tem uma opção de deadline '-w' interessante, e uma opção de quiet '-q', assim vc deixa o próprio ping te dizer se foi sucesso ou nao..
ainda você poderia querer ver a opção de que setar as opções da shell para detectar quais os erros do pipeline (set pipefail)..
3. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, também
msoliverusa Debian
Post recolhido
Enviado em 25/03/2020 - 20:46h
fabianox11 escreveu:
Boa tarde a todos,
Gostaria de uma ajuda para formular uma saida de script deste forma:
Tenho um arquivo que nele possui o nome da estação+ip separado por espaço (Ex.: Estacao1 192.168.20.31). No script, consigo realizar um ping separando por colunas com o awk. O que precisaria é que a cada resposta do ping (positiva ou negativa), ele traga o nome+ip. Segue abaixo o script utilizado:
VAR=$(cat arq.txt | awk '{print $2}')
for x in $VAR
do
ok=`ping -c 1 $x | grep transmitted, | cut -d" " -f4`
if [ $ok = 1 ]; then
echo -e "\nMáquina $x ON"
else
echo -e "\nMáquina $x OFF"
fi
done
Este script já modifiquei ele por algumas vezes para tentar obter o resultado mas sem sucesso.
OBS: este script foi retirado daqui mesmo do VOL de um colega que não peguei o nome mas agradeço a ideia dele!!!
Sds,
Fabiano12
Segue sugestão:
while IFS=" " read -r maq ip;do
if ping -c1 $ip 2>/dev/null;then
echo "$maq $ip On"
else
echo "$maq $ip Off"
fi
done<arq.txt
4. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, também
fabianox11usa Fedora
Post recolhido
Enviado em 27/03/2020 - 10:22h
RogerDez escreveu:
o ping já vai dar uma mensagem de erro informando qual ping deu erro.
mas pelo visto você quer gerenciar o prórios erros.
da forma que vc está fazendo, não está pensando caso o ping saia com um outro erro que não seja o 1..
awk '{print $2}' "arq.txt" |
while read ip; do
if ping -c 1 $ip &>/dev/null; then
echo -e "\nMáquina $ip ON"
else
echo -e "\nMáquina $ip OFF" 1>&2
fi
done
ou
#dessa forma mostra todos os tipos de erros do ping e ignorar os ips que obtiveram sucesso
awk '{print $2}' "arq.txt" |
while read ip; do
ping -c 1 $ip 1>/dev/null #&& echo 'Máquina $ip OK'
done
o ping tem uma opção de deadline '-w' interessante, e uma opção de quiet '-q', assim vc deixa o próprio ping te dizer se foi sucesso ou nao..
ainda você poderia querer ver a opção de que setar as opções da shell para detectar quais os erros do pipeline (set pipefail)..
Bom dia RogerDez,
Suas 2 sugestões não funcionaram como planejo pois elas ainda não trazem as respostas que pretendo que são: mesmo que sejam repostas negativas, a saida deverá ser +- desta forma: Estacao + IP ON ou Estacao + IP OFF. Elas trazem somente o IP. Mas de certa forma agradeço pela ideia.
5. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, também
fabianox11usa Fedora
Post recolhido
Enviado em 27/03/2020 - 10:33h
msoliver escreveu:
fabianox11 escreveu:
Boa tarde a todos,
Gostaria de uma ajuda para formular uma saida de script deste forma:
Tenho um arquivo que nele possui o nome da estação+ip separado por espaço (Ex.: Estacao1 192.168.20.31). No script, consigo realizar um ping separando por colunas com o awk. O que precisaria é que a cada resposta do ping (positiva ou negativa), ele traga o nome+ip. Segue abaixo o script utilizado:
VAR=$(cat arq.txt | awk '{print $2}')
for x in $VAR
do
ok=`ping -c 1 $x | grep transmitted, | cut -d" " -f4`
if [ $ok = 1 ]; then
echo -e "\nMáquina $x ON"
else
echo -e "\nMáquina $x OFF"
fi
done
Este script já modifiquei ele por algumas vezes para tentar obter o resultado mas sem sucesso.
OBS: este script foi retirado daqui mesmo do VOL de um colega que não peguei o nome mas agradeço a ideia dele!!!
Sds,
Fabiano12
Segue sugestão:
while IFS=" " read -r maq ip;do
if ping -c1 $ip 2>/dev/null;then
echo "$maq $ip On"
else
echo "$maq $ip Off"
fi
done<arq.txt
Sua sugestão me proporcionou a saida que pretendo porém, ele pára no primeiro IP do arquivo e não segue os demais. Neste arquivo tem +- 15 linhas, uma embaixo da outra, que estão desta forma: Estação + IP. Ex.:
Estacao1 192.168.20.10
Estacao2 192.168.20.11
Estacao3 192.168.20.12
...
Neste caso, o uso do for resolveria? Se sim, qual seria a semantica do codigo?
Sds,
Fabiano12
6. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, também
msoliverusa Debian
Post recolhido
Enviado em 27/03/2020 - 19:24h
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
Boa tarde a todos,
Gostaria de uma ajuda para formular uma saida de script deste forma:
Tenho um arquivo que nele possui o nome da estação+ip separado por espaço (Ex.: Estacao1 192.168.20.31). No script, consigo realizar um ping separando por colunas com o awk. O que precisaria é que a cada resposta do ping (positiva ou negativa), ele traga o nome+ip. Segue abaixo o script utilizado:
VAR=$(cat arq.txt | awk '{print $2}')
for x in $VAR
do
ok=`ping -c 1 $x | grep transmitted, | cut -d" " -f4`
if [ $ok = 1 ]; then
echo -e "\nMáquina $x ON"
else
echo -e "\nMáquina $x OFF"
fi
done
Este script já modifiquei ele por algumas vezes para tentar obter o resultado mas sem sucesso.
OBS: este script foi retirado daqui mesmo do VOL de um colega que não peguei o nome mas agradeço a ideia dele!!!
Sds,
Fabiano12
Segue sugestão:
while IFS=" " read -r maq ip;do
if ping -c1 $ip 2>/dev/null;then
echo "$maq $ip On"
else
echo "$maq $ip Off"
fi
done<arq.txt
Sua sugestão me proporcionou a saida que pretendo porém, ele pára no primeiro IP do arquivo e não segue os demais.
Neste arquivo tem +- 15 linhas, uma embaixo da outra, que estão desta forma: Estação + IP. Ex.:
Estacao1 192.168.20.10
Estacao2 192.168.20.11
Estacao3 192.168.20.12
...
Neste caso, o uso do for resolveria? Se sim, qual seria a semantica do codigo?
Sds,
Fabiano12
Boa noite Fabiano.
O script esta perfeito....
exceto o direcionamento do ping, mas, nada que afete o bom funcionamento. Corrigindo o direcionamento:
if ping -c1 $ip &>/dev/null;then
Bem provável que o problema esteja no arquivo com os IP's e nome das estações,
Pode ser o IFS ou o fim de linha.
Para certificar, poste a saída dos comandos:
file arquivo.txt
cat -A arquivo.txt
7. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, também
fabianox11usa Fedora
Post recolhido
Enviado em 28/03/2020 - 09:51h
msoliver escreveu:
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
Boa tarde a todos,
Gostaria de uma ajuda para formular uma saida de script deste forma:
Tenho um arquivo que nele possui o nome da estação+ip separado por espaço (Ex.: Estacao1 192.168.20.31). No script, consigo realizar um ping separando por colunas com o awk. O que precisaria é que a cada resposta do ping (positiva ou negativa), ele traga o nome+ip. Segue abaixo o script utilizado:
VAR=$(cat arq.txt | awk '{print $2}')
for x in $VAR
do
ok=`ping -c 1 $x | grep transmitted, | cut -d" " -f4`
if [ $ok = 1 ]; then
echo -e "\nMáquina $x ON"
else
echo -e "\nMáquina $x OFF"
fi
done
Este script já modifiquei ele por algumas vezes para tentar obter o resultado mas sem sucesso.
OBS: este script foi retirado daqui mesmo do VOL de um colega que não peguei o nome mas agradeço a ideia dele!!!
Sds,
Fabiano12
Segue sugestão:
while IFS=" " read -r maq ip;do
if ping -c1 $ip 2>/dev/null;then
echo "$maq $ip On"
else
echo "$maq $ip Off"
fi
done<arq.txt
Sua sugestão me proporcionou a saida que pretendo porém, ele pára no primeiro IP do arquivo e não segue os demais.
Neste arquivo tem +- 15 linhas, uma embaixo da outra, que estão desta forma: Estação + IP. Ex.:
Estacao1 192.168.20.10
Estacao2 192.168.20.11
Estacao3 192.168.20.12
...
Neste caso, o uso do for resolveria? Se sim, qual seria a semantica do codigo?
Sds,
Fabiano12
Boa noite Fabiano.
O script esta perfeito....
exceto o direcionamento do ping, mas, nada que afete o bom funcionamento. Corrigindo o direcionamento:
if ping -c1 $ip &>/dev/null;then
Bem provável que o problema esteja no arquivo com os IP's e nome das estações,
Pode ser o IFS ou o fim de linha.
Para certificar, poste a saída dos comandos:
file arquivo.txt
cat -A arquivo.txt
Saida do comando file arq.txt:
arq.txt: ASCII text
Saida do comando cat -A arq.txt:
Estacao1 192.168.20.10$
Estacao2 192.168.20.11$
Estacao3 192.168.20.12$
Sds,
Fabiano12
8. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, também
msoliverusa Debian
Post recolhido
Enviado em 28/03/2020 - 19:21h
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
Boa tarde a todos,
Gostaria de uma ajuda para formular uma saida de script deste forma:
Tenho um arquivo que nele possui o nome da estação+ip separado por espaço (Ex.: Estacao1 192.168.20.31). No script, consigo realizar um ping separando por colunas com o awk. O que precisaria é que a cada resposta do ping (positiva ou negativa), ele traga o nome+ip. Segue abaixo o script utilizado:
VAR=$(cat arq.txt | awk '{print $2}')
for x in $VAR
do
ok=`ping -c 1 $x | grep transmitted, | cut -d" " -f4`
if [ $ok = 1 ]; then
echo -e "\nMáquina $x ON"
else
echo -e "\nMáquina $x OFF"
fi
done
Este script já modifiquei ele por algumas vezes para tentar obter o resultado mas sem sucesso.
OBS: este script foi retirado daqui mesmo do VOL de um colega que não peguei o nome mas agradeço a ideia dele!!!
Sds,
Fabiano12
Segue sugestão:
while IFS=" " read -r maq ip;do
if ping -c1 $ip 2>/dev/null;then
echo "$maq $ip On"
else
echo "$maq $ip Off"
fi
done<arq.txt
Sua sugestão me proporcionou a saida que pretendo porém, ele pára no primeiro IP do arquivo e não segue os demais.
Neste arquivo tem +- 15 linhas, uma embaixo da outra, que estão desta forma: Estação + IP. Ex.:
Estacao1 192.168.20.10
Estacao2 192.168.20.11
Estacao3 192.168.20.12
...
Neste caso, o uso do for resolveria? Se sim, qual seria a semantica do codigo?
Sds,
Fabiano12
Boa noite Fabiano.
O script esta perfeito....
exceto o direcionamento do ping, mas, nada que afete o bom funcionamento. Corrigindo o direcionamento:
if ping -c1 $ip &>/dev/null;then
Bem provável que o problema esteja no arquivo com os IP's e nome das estações,
Pode ser o IFS ou o fim de linha.
Para certificar, poste a saída dos comandos:
file arquivo.txt
cat -A arquivo.txt
Saida do comando file arq.txt:
arq.txt: ASCII text
Saida do comando cat -A arq.txt:
Estacao1 192.168.20.10$
Estacao2 192.168.20.11$
Estacao3 192.168.20.12$
Sds,
Fabiano12
Boa noite Fabiano.
Aparentemente o arq.txt está correto, tanto no separador "IFS", qto no fim de linha. Vamos aos testes:
Com o comando:
seq 10 25|xargs -i echo "Estacao_{} 192.168.20.{}" > ip.txt
Gero o arquivo "ip.txt"
Estacao_10 192.168.20.10
Estacao_11 192.168.20.11
. . .
Estacao_25 192.168.20.25
Script
#!/usr/bin/bash
while IFS=" " read -r pc ip;do
printf "%()T Testando: PC:$pc IP:$ip\n"
if ping -c1 $ip &>/dev/null;then
echo "$pc $ip On"
else
echo "$pc $ip Off"
fi
done<ip.txt
Testes no Terminal:
while IFS=" " read pc ip;do sleep 1; printf "[%()T] PC:$pc IP:$ip\n";done<ip.txt Saída, lista todas as linhas com diferença de 1 segundo:
[19:03:54] PC:Estacao_10 IP:192.168.20.10
[19:03:55] PC:Estacao_11 IP:192.168.20.11
[19:03:56] PC:Estacao_12 IP:192.168.20.12..... Duvida:
Como está executando/"chamando" o script?
______________________________________________________________________ Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________
9. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, ta
fabianox11usa Fedora
Post recolhido
Enviado em 04/04/2020 - 19:28h
msoliver escreveu:
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
Boa tarde a todos,
Gostaria de uma ajuda para formular uma saida de script deste forma:
Tenho um arquivo que nele possui o nome da estação+ip separado por espaço (Ex.: Estacao1 192.168.20.31). No script, consigo realizar um ping separando por colunas com o awk. O que precisaria é que a cada resposta do ping (positiva ou negativa), ele traga o nome+ip. Segue abaixo o script utilizado:
VAR=$(cat arq.txt | awk '{print $2}')
for x in $VAR
do
ok=`ping -c 1 $x | grep transmitted, | cut -d" " -f4`
if [ $ok = 1 ]; then
echo -e "\nMáquina $x ON"
else
echo -e "\nMáquina $x OFF"
fi
done
Este script já modifiquei ele por algumas vezes para tentar obter o resultado mas sem sucesso.
OBS: este script foi retirado daqui mesmo do VOL de um colega que não peguei o nome mas agradeço a ideia dele!!!
Sds,
Fabiano12
Segue sugestão:
while IFS=" " read -r maq ip;do
if ping -c1 $ip 2>/dev/null;then
echo "$maq $ip On"
else
echo "$maq $ip Off"
fi
done<arq.txt
Sua sugestão me proporcionou a saida que pretendo porém, ele pára no primeiro IP do arquivo e não segue os demais.
Neste arquivo tem +- 15 linhas, uma embaixo da outra, que estão desta forma: Estação + IP. Ex.:
Estacao1 192.168.20.10
Estacao2 192.168.20.11
Estacao3 192.168.20.12
...
Neste caso, o uso do for resolveria? Se sim, qual seria a semantica do codigo?
Sds,
Fabiano12
Boa noite Fabiano.
O script esta perfeito....
exceto o direcionamento do ping, mas, nada que afete o bom funcionamento. Corrigindo o direcionamento:
if ping -c1 $ip &>/dev/null;then
Bem provável que o problema esteja no arquivo com os IP's e nome das estações,
Pode ser o IFS ou o fim de linha.
Para certificar, poste a saída dos comandos:
file arquivo.txt
cat -A arquivo.txt
Saida do comando file arq.txt:
arq.txt: ASCII text
Saida do comando cat -A arq.txt:
Estacao1 192.168.20.10$
Estacao2 192.168.20.11$
Estacao3 192.168.20.12$
Sds,
Fabiano12
Boa noite Fabiano.
Aparentemente o arq.txt está correto, tanto no separador "IFS", qto no fim de linha. Vamos aos testes:
Com o comando:
seq 10 25|xargs -i echo "Estacao_{} 192.168.20.{}" > ip.txt
Gero o arquivo "ip.txt"
Estacao_10 192.168.20.10
Estacao_11 192.168.20.11
. . .
Estacao_25 192.168.20.25
Script
#!/usr/bin/bash
while IFS=" " read -r pc ip;do
printf "%()T Testando: PC:$pc IP:$ip\n"
if ping -c1 $ip &>/dev/null;then
echo "$pc $ip On"
else
echo "$pc $ip Off"
fi
done<ip.txt
Testes no Terminal:
while IFS=" " read pc ip;do sleep 1; printf "[%()T] PC:$pc IP:$ip\n";done<ip.txt Saída, lista todas as linhas com diferença de 1 segundo:
[19:03:54] PC:Estacao_10 IP:192.168.20.10
[19:03:55] PC:Estacao_11 IP:192.168.20.11
[19:03:56] PC:Estacao_12 IP:192.168.20.12..... Duvida:
Como está executando/"chamando" o script?
______________________________________________________________________ Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________
Boa noite MsOliver, (MELHOR RESPOSTA)
Script funcionou quando alterei a chamada de "sh script.sh" para "./script.sh"
Muito obrigado pela ajuda!!!
Sucesso sempre!!!
PS: deixei na saudação marcado como melhor resposta pois não sei como marcar aqui.
Sds,
Fabiano Lima
10. Re: Script que pinga uma lista de ips e nas respostas (positivas ou negativas) traga, alem do IP, também
msoliverusa Debian
Post recolhido
Enviado em 04/04/2020 - 19:39h
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
msoliver escreveu:
fabianox11 escreveu:
Boa tarde a todos,
Gostaria de uma ajuda para formular uma saida de script deste forma:
Tenho um arquivo que nele possui o nome da estação+ip separado por espaço (Ex.: Estacao1 192.168.20.31). No script, consigo realizar um ping separando por colunas com o awk. O que precisaria é que a cada resposta do ping (positiva ou negativa), ele traga o nome+ip. Segue abaixo o script utilizado:
VAR=$(cat arq.txt | awk '{print $2}')
for x in $VAR
do
ok=`ping -c 1 $x | grep transmitted, | cut -d" " -f4`
if [ $ok = 1 ]; then
echo -e "\nMáquina $x ON"
else
echo -e "\nMáquina $x OFF"
fi
done
Este script já modifiquei ele por algumas vezes para tentar obter o resultado mas sem sucesso.
OBS: este script foi retirado daqui mesmo do VOL de um colega que não peguei o nome mas agradeço a ideia dele!!!
Sds,
Fabiano12
Segue sugestão:
while IFS=" " read -r maq ip;do
if ping -c1 $ip 2>/dev/null;then
echo "$maq $ip On"
else
echo "$maq $ip Off"
fi
done<arq.txt
Sua sugestão me proporcionou a saida que pretendo porém, ele pára no primeiro IP do arquivo e não segue os demais.
Neste arquivo tem +- 15 linhas, uma embaixo da outra, que estão desta forma: Estação + IP. Ex.:
Estacao1 192.168.20.10
Estacao2 192.168.20.11
Estacao3 192.168.20.12
...
Neste caso, o uso do for resolveria? Se sim, qual seria a semantica do codigo?
Sds,
Fabiano12
Boa noite Fabiano.
O script esta perfeito....
exceto o direcionamento do ping, mas, nada que afete o bom funcionamento. Corrigindo o direcionamento:
if ping -c1 $ip &>/dev/null;then
Bem provável que o problema esteja no arquivo com os IP's e nome das estações,
Pode ser o IFS ou o fim de linha.
Para certificar, poste a saída dos comandos:
file arquivo.txt
cat -A arquivo.txt
Saida do comando file arq.txt:
arq.txt: ASCII text
Saida do comando cat -A arq.txt:
Estacao1 192.168.20.10$
Estacao2 192.168.20.11$
Estacao3 192.168.20.12$
Sds,
Fabiano12
Boa noite Fabiano.
Aparentemente o arq.txt está correto, tanto no separador "IFS", qto no fim de linha. Vamos aos testes:
Com o comando:
seq 10 25|xargs -i echo "Estacao_{} 192.168.20.{}" > ip.txt
Gero o arquivo "ip.txt"
Estacao_10 192.168.20.10
Estacao_11 192.168.20.11
. . .
Estacao_25 192.168.20.25
Script
#!/usr/bin/bash
while IFS=" " read -r pc ip;do
printf "%()T Testando: PC:$pc IP:$ip\n"
if ping -c1 $ip &>/dev/null;then
echo "$pc $ip On"
else
echo "$pc $ip Off"
fi
done<ip.txt
Testes no Terminal:
while IFS=" " read pc ip;do sleep 1; printf "[%()T] PC:$pc IP:$ip\n";done<ip.txt Saída, lista todas as linhas com diferença de 1 segundo:
[19:03:54] PC:Estacao_10 IP:192.168.20.10
[19:03:55] PC:Estacao_11 IP:192.168.20.11
[19:03:56] PC:Estacao_12 IP:192.168.20.12..... Duvida:
Como está executando/"chamando" o script?
______________________________________________________________________ Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________
Boa noite MsOliver, (MELHOR RESPOSTA)
Script funcionou quando alterei a chamada de "sh script.sh" para "./script.sh"
Muito obrigado pela ajuda!!!
Sucesso sempre!!!
PS: deixei na saudação marcado como melhor resposta pois não sei como marcar aqui.
Sds,
Fabiano Lima
Bom noite Fabiano.
Existem algumas diferenças entre o "sh" e o "bash", por isso não funcionava....
bom que resolveu....
Para escolher a melhor resposta,
O tópico tem que ser marcado como resolvido....