Tiago,
em 1º lugar obrigado pelas explicações , só fiquei um pouco na dúvida ali
no retorno
se não exiter ele retorna o 127 ou o 1 ?
Com o find eu tinha tentado antes, mas não soube fazer, pois ele mesmo não
achando o arquivo ele não ia para o código depois do || pois ele executava o
comando find correto, só não tinha um resultado. Também tinha tentado com o
whereis, mas sem muito sucesso também., vou dar mais uma olhada aqui nesse
email e tentar fazer mais uns testes, e obrigado mais uma vez pela ajuda.
On 12/22/06, Tiago Barcellos Peczenyj <address@hidden> wrote:
>
> Fernando
>
> Vc pode fazer isso de 2 formas.
>
> 1) existe o comando which, que informa aonde está localizado um dado
> arquivo executavel dentro do seu $PATH
>
> $ which gcc
> /usr/bin/gcc
>
> $ echo $?
> 0
>
> $ which netscape
> netscape: Command not found.
>
> $ echo $?
> 1
>
> dessa forma:
>
> $ which comando 2>&- >&- && echo 'existe' || echo 'nao existe'
>
> 2) Veja o codigo de retorno,
>
> $ lalala
> bash: lalala: command not found
>
> $ echo $?
> 127
>
> este codigo significa Comando não encontrado ("command not found") --
> o que pode ser bem mais util no seu script. perceba que vc está refém
> do PATH nesses casos, se quiser algo mais poderoso pode tentar via
> find ;-)
>
>
> On 12/22/06, Fernando Zank <address@hidden<fernandozank%40gmail.com>>
> wrote:
> >
> >
> >
> >
> >
> >
> > Ae pessoal da lista, mais uma vez vou recorrer a vocês para tentar achar
> uma
> > solução para o meu problema.
> >
> > O Problema é o seguinte , estou fazendo um script em que um determinado
> > momente quero testar se existe um pacote instalado, caso contrário ele
> chama
> > uma função para instalar este pacote.
> >
> > Bom vamos ao que interessa hehehe tá mais ou menos assim em determinado
> > ponto do script.
> >
> > código abaixo:
> >
> > sp-sc $channel 3908 8908 > /dev/null & || install
> >
> > bom eu testei assim dae não funciona no meu caso, não sei se é por causa
> do
> > redirecionamento,
> > mas caso eu tivesse testado outra coisa como cat /arquivo_que_nao_existe
> ele
> > executa a função install.
> >
> > Agradeço a todos pelas sugestões e soluções.
> >
> > --
> > "Somos o que repetidamente fazemos, portanto a
> > excelência não é um feito é um hábito" - Aristóteles
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
>
> --
> Tiago B Peczenyj
> Linux User #405772
>
> # cd /pub
> # more beer
>
>
>
--
"Somos o que repetidamente fazemos, portanto a
excelência não é um feito é um hábito" - Aristóteles
[As partes desta mensagem que não continham texto foram removidas]