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 15:44:45 -0200

Dei uma procurada aqui, mas ainda não achei nada, mas uso o Ubuntu então
tentei ver alguma opção do dpkg para testar os pacotes, mas agora to meio
enrolado aqui no trab e vou deixar para mais tarde, bom vo disponibiliza o
script que eu estava fazendo para os outros da lista, o script é simples e
to usando dialog, pois estava fazendo os exemplos para aprender , o objetivo
dele é fazer rodar um canal de tv no pc atráves do soapcast (ta funcionando
, mas eu queria melhorar o script), ta funcionando 2 canais por enquanto
ESPN e Animal planet, se quizer colocar os outros é so ver na lista de
canais do sopcast (  http://www.sopcast.com/channel/chlist.jsp )

quem quizer o código segue o link com o script:

http://pastebin.com/843173

On 12/22/06, Tiago Barcellos Peczenyj <address@hidden> wrote:
>
>   existem codigos de retorno que representam problemas comuns:
>
> http://aurelio.net/shell/canivete.html#exitcode
>
> e outros que dependem do programa, alguns trazem no man o que
> significa cada um, por exemplo.
>
> o seu codigo estava, digamos, permissivo demais, se o programa não
> fosse executado 100% ENC (aka 100% energia na carcaça) vc executaria o
> install -- e poderia ser N+1 problemas alem de não ter o tal programa
> instalado.
>
> tem opções no rpm e outros gerenciadores de pacotes para ver se algo
> está instalado ou não, seria interessante ver e compartilhar com a
> lista os teus resultados :)
>
> --------------------------
> Aproveitando, um Feliz Natal && Prospero 200{7,8,9,...} à todos da lista!
>
>
> On 12/22/06, Fernando Zank <address@hidden<fernandozank%40gmail.com>>
> wrote:
> >
> > 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<tiago.peczenyj%40gmail.com>>
> 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>
> <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]
> >
> >
>
> --
> 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]