有没有办法在文件/文件夹中搜索十六进制值?我尝试过以下方法:
grep -P "[\x01\x02\x03]"
但这不起作用(没有错误,但它不搜索这些十六进制值)。
答案1
要搜索文件和文件夹,请添加r
(递归)选项:
grep -Pr "[\x01\x02\x03]"
答案2
有时,如果您仅使用一个示例,您的内容将不可见。
grep -aPr "[\x01\x02\x03]" *.txt >> matches.txt
grep -aPr "[\x01\x02\x03]" matches.txt >> contents.txt
OR best solution:
grep -aPr "[\x01\x02\x03]" --include=\*.txt --include=\*.html >> writetofile.txt
grep -aPr "[\x01\x02\x03]" writetofile.txt >> allresults.txt
-a 启用递归文件写入。这是我花了整整一个星期才弄清楚的事情。否则,您注定会在每个文件上都匹配,但没有结果。
您必须双倍运行 grep 第二个示例才能从递归写入中删除第一个文件中的文本。