O * força grep a varrer dentro de todos os arquivos na pasta atual, em vez de usar a entrada padrão, mas como grep não está nas subpastas, apenas relata as ocurriências da pasta para stderr me desabilitar os relatórios basta redirecionar stderr para /dev/null (POSIX):
$ grep -l prac * 2>/dev/null
, a maneira adicional de evitar o relatório de pastas é (não POSIX):
$ grep -l Build --exclude-dir=* *
para digitalizar incluindo subpastas (POSIX):
$ grep -l prac * -r
para a entrada padrão do grep (POSIX):
$ cat file | grep -l prac
Há muitas implementações de grep , portanto, elas podem diferir entre si em um conjunto de chaves e comportamento padrão, mas existe um POSIX padrão que descreve um conjunto mínimo de chaves a serem implementadas por grep (e outras soft) . No entanto, eu não sei nada sobre o POSIX definir o comportamento de pesquisa padrão para grep . Parece que a implementação unix quase alcança grep -l Build --exclude-dir=* * do linux.