Execute o comando do resultado do grep

0

Eu tenho um arquivo abc.txt na minha pasta pessoal.

~$ cat abc.txt e ls e date

Eu quero querer executar um comando grep como ~$ grep 'dat' abc.txt
que dá date no resultado e date é um comando shell. Então eu quero executar o comando que recebi no resultado do grep ( date ) na mesma linha do comando grep.

É possível usar o operador | como ~$ grep 'dat' abc.txt | [Some command syntax like xargs] , o que dá o resultado tempo atual como Sex. 4 de nov. 18:55:06 IST 2016

    
por shubham12511 04.11.2016 / 14:41

1 resposta

0

É isso que você precisa?
note: isto está usando o shell bash

# cat abc.txt  
test line 1
date +%F  
test line 3

# $(grep dat abc.txt)  
2016-11-04  

Você precisa ter cuidado com o que você filtrar do comando grep - tudo isso será disparado no shell - como um único comando! Por isso, obtenha uma correspondência de linha única com o seu filtro.

PS: Tem que haver uma maneira melhor para isso, mas isso me escapa agora.
Ajudaria a saber o que você está realmente tentando fazer aqui.

    
por 04.11.2016 / 15:11