grep 设备上的整个文件系统块

grep 设备上的整个文件系统块

命令

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

输出

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

似乎grep无法继续,因为它正在等待设备。如何跳过此类设备?

答案1

如果find可用,请尝试:

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

这仅适用于常规文件,因此它将跳过块和字符设备。看man find

您可能想跳过类似/proc或 的目录/sys;正如 Stephane Chazelas 在评论中指出的那样,当您阅读其中的某些文件时,它们会被阻止(保持打开状态,挂起搜索)。为此,您可以尝试-xdevaka.-mount指令,假设文件系统的其余部分位于一台设备上。如果该-fstype指令对你有用,那就更好了(不幸的是它在 Linux 上对我不起作用)。

IMO,您不应该摆弄这个,而应该对您真正想要搜索的顶级目录重复该过程,而不是尝试一次性完成所有操作(在这种情况下您可能不需要找到...)

相关内容