grep -cZ
有一个奇怪的行为,虽然文件名以 null 结尾,但会出现匹配数后对应的文件名。通过od -c
:
0000000 / u s r / i n c l u d e / u c o
0000010 n t e x t . h \0 1 \n / u s r / i
这带来了一个特殊的问题,因为我无法直接使用其他命令(例如sort
、sed
等)对 nul 终止输入的支持。我如何grep
先发布计数?
答案1
将输出通过管道传输到:
perl -pe 's/^(.*\0)(\d+)\n/$2 $1/s'
它将根据注释中的要求输出每个匹配项:计数、空格、文件名、\0。