Pular para o conteúdo

Passar um comando com grep na linha de comando [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Passar um comando com grep na linha de comando [RESOLVIDO]

Enviado em 20/08/2012 - 16:23h

Bom galera estou desenvolvendo um script simples para ficar executando um comando de tempo em tempos, só que quando mando executar um comando que tenha o "|" pipeline grep alguma coisa ele nao rola.
Por exemplo eu tenho um loop infinito que tem um sleep do numero de segundos que o cara quer espera, e o script executa o comando que esta no parametro.
Mais ou menos assim
./timecommand.sh <comando> <tempo em segundos>

--comando --> comando que será executadi
--tempo em segundo --> tempo de espera entre a execução do comando.

Exemplo
./timecommand.sh "ls -la" 5
ou seja ele executa o comando ls -la de 5 em 5 segudos

./timecommand.sh "netstat -nalp | grep :700 --color" 3
Ja neste comando o netstat nao funciona e diz que nao tem a opcao --color, já quando tirou o --color ele executa o netstat, mas nao executa o grep

Alguem sabe por que ?


Agradecido.

Responder tópico

2. Re: Passar um comando com grep na linha de comando [RESOLVIDO]

Enviado em 20/08/2012 - 22:12h

Porque dentro do seu script as aspas duplas serão retiradas na execução e ai o '--color' vai ser identificado como um possível parametro,...

tente fazer assim:


./timecommand.sh "netstat -nalp | grep ':700 --color'" 3

ou

./timecommand.sh "netstat -nalp | grep \:700 \-\-color" 3

3. Re: Passar um comando com grep na linha de comando [RESOLVIDO]

Enviado em 21/08/2012 - 08:37h

Eu até tentei só que funciona o comando netstat, mas o grep nao funciona. Ele me traz o resultado completo do netstat ou qualquer outro comando que eu use com grep

4. Re: Passar um comando com grep na linha de comando [RESOLVIDO]

Enviado em 21/08/2012 - 08:48h

Tive que colocar eval e colocar a variavel dentro das aspas dentro do meu script.

eval "$comando";

Valew rai3mb

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder