Como posso grep o conteúdo de arquivos com o bash somente sem usar find ou grep -r? [fechadas]

0

gostaria de escrever um programa bash que, se eu digitar o seguinte:

-bash-4.1$ ./sample.sh path regex keyword

que resultará em algo assim:

path/sample.txt:12

path/sample.txt:34

path/dir/sample1.txt:56

path/dir/sample2.txt:78

Eu não tenho absolutamente nenhuma idéia de como posso conseguir isso sem usar find ou grep -r (mas eu posso usar grep / sed / awk) em bash ... Por favor, ajude ...

Muito obrigado !!

    
por user1959859 09.01.2013 / 02:58

1 resposta

1

shopt -s globstar
awk '/search-string/ { print FILENAME ":" NR }' **/*

globstar ativa a globalização recursiva. NR contém o número da linha atual.

    
por 09.01.2013 / 03:28

Tags