hudyfx
(usa Outra)
Enviado em 26/07/2011 - 01:49h
cara... não sou professor e sim apena mais um nerd que não sabe fazer outra coisa alem de programar rsrsrs
ok... eu até agora eu não tinha me dado conta de uma porção de coisa que o seu script deveria fazer e não esta fazendo...
tomemos com referencia essa linha:
net= $(ping -c 1 google.com | grep unknown)
agente pode aprender um mote de coisa com essa linha de comando.
1º na atribuição de dados em uma variável não exite espaço, por exemplo:
$ var= hudy
se vc executar essa linha no shell ele vai retornar um erro dizendo "hudy: comando não encotrado".
o correto seria:
$ var=hudy
$ echo $var
hudy
como avia dito anteriormente, a palavra 'hudy' é uma string, porem se quisermos atribuir varias palavras dentro de $var, deveremos usar aspas dupla " ".
$ var="O Guia do mochileiro das galaxias"
$ echo $var
O Guia do mochileiro das galaxias
bom tudo apenas pra dizer que não tem espaço depois do sinal de "=" rsrs
net=$(ping -c 1 google.com | grep unknown)
2º posso lhe dizer que a ideia do comando dentro de $() é até boa porem ela nunca daria certo por causa das características do comando "ping".
O ping usa duas saídas de erro a 1 para retorno positivo e a 2 para negativo por tanto, para que a variável receba a saída de erro do ping vc deve fazer assim:
net=$(ping -c 1 google.com 2>/dev/stdout | grep unknown)
o resultado passa pela entrada padrão (1) fazendo com que seja gravado dentro da variável.
bom... eu geralmente uso crase ao invés de $() ficando assim
net=`ping -c 1 google.com 2>/dev/stdout | grep unknown`
no fim das contas da no mesmo.. apenas digito menos rsrsr....
deve ter mais algumas coisa para observar porem até o momento só tive tempo de olhar isso... espero que te ajude por enquanto falowww