Redirecionar erro padrão para / dev / null. Ou seja,
find -type f -print0 2>/dev/null | xargs -0 -n 10 grep -i searchstring 2>/dev/null
eu uso
find -type f -print0 | xargs -0 -n 10 grep -i searchstring
para pesquisar recursivamente por uma string. Mas também me dá mensagens de erro como "permissão negada". Como posso evitar essas mensagens de erro e ver apenas os resultados?
Redirecionar erro padrão para / dev / null. Ou seja,
find -type f -print0 2>/dev/null | xargs -0 -n 10 grep -i searchstring 2>/dev/null
Se as mensagens de erro forem encontradas (por exemplo, porque há um diretório que você não pode percorrer, redirecione seus erros para /dev/null
.
find -type f -print0 2>/dev/null | …
Se as mensagens de erro vierem do grep (por exemplo, porque alguns arquivos são ilegíveis), redirecione seus erros para /dev/null
ou passe a opção -s
para dizer que ignora arquivos ilegíveis.
xargs -0 grep -s -i searchstring /dev/null
Não faz sentido limitar o número de arquivos passados juntos para grep
. Mas você deve adicionar /dev/null
para que grep
sempre veja pelo menos dois arquivos, caso contrário grep
omite o nome do arquivo em sua saída se tiver apenas um argumento de arquivo. Com o GNU grep ou o Busybox (por exemplo, Linux ou Cygwin), você pode usar a opção -H
.
Tags search linux string io-redirection