【发布时间】:2023-03-31 02:36:01
【问题描述】:
grep 返回
二进制文件 test.log 匹配例如
echo "line1 re \x00\r\nline2\r\nline3 re\r\n" > test.log # in zsh
echo -e "line1 re \x00\r\nline2\r\nline3 re\r\n" > test.log # in bash
grep re test.log
我希望结果会显示 line1 和 line3(总共两行)。
是否可以使用tr将不可打印的数据转换为可读的数据,让grep再次工作?
【问题讨论】:
-
请注意,有一个程序可以从二进制文件中过滤掉二进制字符,只保留文本字符(可读)。这里:soft.tahionic.com/download-words_extractor/index.html
-
对不起,但是...您不是在
echo命令中缺少-e吗? -
如果你使用'zsh',没有-e也可以。如果你使用'bash',你应该添加'-e'。
标签: shell