grep blocos inteiros do sistema de arquivos em dispositivos

grep blocos inteiros do sistema de arquivos em dispositivos

Comando

grep -rHinF --colour=always -e "aa:aa:aa:aa" /

Saída

grep: /dev/geom.ctl: Operation not supported by device
grep: /dev/devctl: Device busy

Parece que grepnão consigo prosseguir pois está aguardando um dispositivo. Como posso pular esses dispositivos?

Responder1

Se findestiver disponível, tente:

find / -type f -exec grep -rHinF --colour=always -e "aa:aa:aa:aa" {} +

Isso se aplica apenas a arquivos regulares, portanto, ignorará dispositivos de blocos e caracteres. Ver man find.

Você provavelmente deseja pular diretórios como /procou /sys; como aponta Stephane Chazelas nos comentários, alguns arquivos ali contidos serão bloqueados (permanecerão abertos, travando a busca) quando você os ler. Para fazer isso, você pode tentar o -xdevaka. -mountdiretiva, presumindo que o resto do seu sistema de arquivos esteja em um dispositivo. Se a -fstypediretiva funcionar para você, seria melhor (infelizmente não funciona para mim no Linux).

IMO, em vez de mexer nisso, você deve apenas repetir o processo para quaisquer diretórios de nível superior que realmente deseja pesquisar, em vez de tentar fazer tudo de uma vez (nesse caso, talvez você não precise encontrar...)

informação relacionada