Parece que você deseja grep
em nomes de arquivos, buf se você fizer isso:
find ./ -mindepth 1 -type f -mtime +60 -print0 | xargs -0 egrep -vZ 'vvv|iii'
o xargs
apresenta a lista de arquivos que sai do find
como argumento para egrep
.
O que você deve fazer para lidar com a entrada terminada em NUL (de -print0
)
find ./ -mindepth 1 -type f -mtime +60 -print0 | xargs -0 grep -EvzZ 'vvv|iii'
( egrep
está obsoleto, é por isso que eu mudei para grep -E
)
De man grep
:
-z, --null-data
Treat the input as a set of lines, each terminated by a zero
byte (the ASCII NUL character) instead of a newline. Like the
-Z or --null option, this option can be used with commands like
sort -z to process arbitrary file names.
-Z, --null
Output a zero byte (the ASCII NUL character) instead of the
character that normally follows a file name.
Você precisa dos dois -z
e -Z