Se colocar o $ok entre aspas deve resolver: if [ "$ok" = "ttl=64" ]; then
[]'s Eri Ramos Bastos 2009/2/17 edua...@efsm.no-ip.org <edua...@efsm.no-ip.org>: > Com esse script eu posso ver na minha rede quais máquinas são linux e > quais são windows > só que está apresentando o seguinte erro: > > duping.sh: line 11: [: =: unary operator expected > > > #!/bin/bash > clear > read -p "Digite a faixa de IP (ex:255.255.255. ): " faixa > read -p "Digite o número para iniciar: " inicio > read -p "Digite o número para terminar: " fim > echo -e "\n===============================" > echo -e "Pingando IP´s $faixa$inicio atÃ(c) $faixa$fim" > for((i=$inicio;i<=$fim;i++)) > do > ok=`ping -c 1 $faixa$i | grep -E "ttl=64" | cut -d " " -f6` > if [ $ok = "ttl=64" ]; then > echo -e "\nMáquina $faixa$i LINUX" > else > echo -e "\nMáquina $faixa$i WINDOWS ON ou OFF" > fi > done > > > > > > > ------------------------------------ > > --------------------------------------------------------------------- > Esta lista não admite a abordagem de outras liguagens de programação, como > perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio > aviso. > --------------------------------------------------------------------- > Sair da lista: shell-script-unsubscr...@yahoogrupos.com.br > --------------------------------------------------------------------- > Esta lista é moderada de acordo com o previsto em > http://www.listas-discussao.cjb.net > --------------------------------------------------------------------- > Servidor Newsgroup da lista: news.gmane.org > Grupo: gmane.org.user-groups.programming.shell.brazil > > Links do Yahoo! Grupos > > >