shopt -s globstar
awk '/search-string/ { print FILENAME ":" NR }' **/*
globstar
ativa a globalização recursiva. NR
contém o número da linha atual.
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 !!
shopt -s globstar
awk '/search-string/ { print FILENAME ":" NR }' **/*
globstar
ativa a globalização recursiva. NR
contém o número da linha atual.
Tags bash