遇到了一个奇怪的问题——正在运行一个简单的命令
grep -F "INSERT" new.sql >& output.txt
大小new.sql
为 76MB。这里有趣的是,没有返回任何结果,但是字符串却存在。
当前环境是 OSX 10.9.5,bash 3.2。grep
在同一环境中的其他文件上运行没有问题。
这可能与文件大小/环境有关吗?
答案1
发现将grep
文件视为binary
,因此解决方法是
cat new.sql | tr -d '\000' | grep -F "INSERT"
来源:https://unix.stackexchange.com/questions/19907/what-makes-grep-consider-a-file-to-be-binary