我的代码正在使用grep命令在solr.log中寻找单词“ Read import_aml_entities.properties”,然后将结果写入txt文件。这以前曾奏效。但是,最近,我遇到了一个问题,其中txt文件中的结果显示:二进制文件solr.log匹配。我检查了solr.log,发现它在第一行中具有NULL值,并且使solr.log成为二进制文件。我想知道为什么会这样吗?这是Solr系统的错误吗?
solr.log的图像: NULL Values inside solr.log
发生这种情况时,我正在完全导入。我有一个单独的shell脚本,它调用curl命令来进行完全导入。
答案 0 :(得分:0)
我遇到了同样的问题,并且似乎发生了这种情况:
如果文件中任何地方都有NULL字符,则grep会将其视为二进制文件。
来源:https://unix.stackexchange.com/a/19911/426478-用户bbaja2
我无法弄清楚为什么会发生这种情况,但是要让您的grep命令起作用,解决方案是使用选项“ -a”,例如
grep "Read import_aml_entities.properties" -a solr.log
来源:https://unix.stackexchange.com/a/226980/426478-用户Plouff