我的一个数据处理脚本中有一个简单的循环,看起来像这样......
for f in *.dat; do
process ${f}
done
Run Code Online (Sandbox Code Playgroud)
我想建立一个状态指示器,所以我希望能够计算 中的元素数量*.dat,但我找不到任何线索,而且 Google 对这种搜索并不完全友好。
我有一个可执行文件,它生成一个文本文件作为其输出。问题是文本文件带有某种二进制文件标志。结果是这样的:
$ grep "grep string" output_file.txt
Binary file output_file.txt matches.
$ grep -a "grep string" output_file.txt
[correct results]
Run Code Online (Sandbox Code Playgroud)
一些阅读表明 grep 在前一千个左右的字节中查找空字符,然后从中确定文件是否为“二进制”,所以我的问题有两个:
是否有一种简单的方法可以从我的文件中去除空字符(我可以将其作为后期处理的一部分)以确保 grep 在没有 -a 标志的情况下正常工作?
我应该在代码中寻找一些明显的东西来防止将空字符写入文件吗?我已经非常彻底地查看了代码,我没有看到任何明显的罪魁祸首。
.