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

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

Re: [shell-script] procedimento de verificacao


From: Thiago José Lucas
Subject: Re: [shell-script] procedimento de verificacao
Date: Thu, 12 Aug 2010 08:41:54 -0300
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.10) Gecko/20100620 Icedove/3.0.5

Francisco,

     Não esqueça de adicionar um "grep -v grep"  ao fim de "ps aux | 
grep BaixarXml.exe"..
     Vai ficar assim:ps aux | grep BaixarXml.exe | grep -v grep | wc -l

     Voce pode contar com o wc o retorno do grep depois do primeiro pipe.

Abraços,
--
Thiago Jose Lucas

Em 12-08-2010 03:05, MrBiTs escreveu:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> On 08/11/2010 10:01 PM, Francisco - Yahoo wrote:
> > boa noite a todos, to com uma duvida e gostaria da orientacao de 
> vcs, ja
> > fiz busca no google e nao encontrei o que queria ou entao procurei pelo
> > procedimento errado, mas vamos aos fatos.
> > para agilizar meus procedimentos pretendo fazer um script que informe
> > se uma aplicacao sendo executada pelo wine esta em execucao e em caso
> > negativo ela seja ativada, o procedimento sera feito a cada 15 minutos.
> > li a respeito do comando ps e ele me informa realmente se a rotina esta
> > em execucao.
> >
> > # ps aux | grep aplicativo.exe | wc -l
> > 2 significa que esta sendo executado
> > 1 significa que nao esta sendo executado
> > ( foi o que eu entendi )
> >
> > entao como coloco a instrucao de retorno dentro do if
> >
> > #!/bin/bash
> > # limpar o terminal
> > nrotina = ps aux | grep BaixarXml.exe | wc -l
> > if [ $nrotina -eq 1] then
> > echo " apenas 1 rotina encontrada "
> > else
> > echo " diferente de 1 rotina encontrada "
> > fi
> >
> > Agradeco a orientacao, se nao for incomodo demais, me explique o erro,
> > para que eu possa entender.
>
> Deixa eu ver se eu interpretei corretamente seu e-mail.
>
> A linha nrotina = ps aux | grep BaixarXml.exe | wc -l está errada. Não 
> é assim que se faz em shell-script. Uma forma é:
>
> nrotina=$(ps aux | grep BaixarXml.exe | wc -l)
>
> Não há espaços entre o nome da variável e o sinal de = e os comandos 
> devem ser chamados em um sub-shell (o $() lá).
>
> Como você não disse qual é o erro, esse é um deles. O outro é a 
> construção do if, onde falta um ponto-e-vírgula entre o fechamento
> do teste e a expressão then. A linha deveria ser assim:
>
> if [ $rotina -eq 1 ] ; then
>
> Agora, você coloca uma frase lá que diz: "entao como coloco a 
> instrucao de retorno dentro do if". Não sei se é uma introdução onde
> você quer dizer "vejam como eu coloco a instrução de retorno dentro do 
> if" ou se é uma pergunta, já que você teve zero de
> preocupação com a pontuação no seu e-mail.
>
> Recomendo que você:
>
> a) Estude bastante shell-script
> b) Estruture melhor suas questões, para ter respostas mais precisas. 
> Tudo bem que "esses gurus tem poderes adivinhatórios", mas como
> já diria aquele velho radialista, quem não se comunica, se estrumbica, 
> e você realmente não se comunicou muito. Se você não sabe
> perguntar, não vai ter respostas certas. Veja que nem no Google você 
> conseguiu encontrar nada.
>
> - -- 
>
> Um abraço
>
> .0. MrBiTs - address@hidden <mailto:mrbits.dcf%40gmail.com>
> ..0 GnuPG - 
> http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x6EC818FC2B3CA5AB 
> <http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x6EC818FC2B3CA5AB>
> 000 http://www.mrbits.com.br
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (GNU/Linux)
>
> iQEcBAEBCAAGBQJMY48wAAoJEG7IGPwrPKWr4gcIAIRUrHTbiooXQNNC1H+HRsJj
> cK0zzR5/+2DEu4qa4X3ppqH/ZweanzI4ZcxyKjLA3MsG6D19JklBrKHyyVEts5en
> GcXufwmyoNHyasAqOjS3tAGoEcDZULIxVgHdU+8Hfdf/7L3xHr6XHK7mzASIK9VL
> EPCsl/4xuu03DSg7tC/U++cx+BWfNrSIQpeE/ZMZcQbKs1Pkv7Ux0PPpNSuXyl6m
> rwYGh4UBPp6CGmd7Dsad4vvwcVPpPFJI0fLQOV3ZeEJuyKGUjAtcdeEp2ez0nrFH
> Rs3ZOowuL0gD9wA5JYEsHfGpgyiMpkVYXf5NO9yF4xGgomtVikSZC9Vo135WSIQ=
> =8uQZ
> -----END PGP SIGNATURE-----
>
> 


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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