shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] testar se existe um programa


From: Fernando Zank
Subject: Re: [shell-script] testar se existe um programa
Date: Fri, 22 Dec 2006 12:22:12 -0200

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]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]