我想过滤大型文件(原始分区映像)中的字符串(意外删除的文本文件)。常规“字符串”实用程序(Linux GNU 字符串或 Windows sysinternals 字符串)不将 CR 和 LF 视为字符串的一部分,而是将其视为字符串的分隔符。我需要它们不被视为分隔符。有没有什么工具可以做到这一点?Windows 工具很棒,但如果需要,我可以使用 live-Linux。
谢谢
PS:取消删除工具无法找到此文件
编辑:由于你们很多人不理解我的意思,让我再尝试解释一下:
字符串“test\ntext”中的 \n 为换行符(Windows 或 Unix)被字符串实用程序视为“test”和“text”。如果我查找字符数较少的字符串,会有很多“误报”——只是来自二进制或其他内容的小字符串。由于我想搜索文本文件(或片段),所以字符数很大,这很好,因为可以从列表中删除许多误报。但是:文本文件中有换行符,标准字符串实用程序(GNU 或 sysinternals)不会将它们“视为”单个字符串。
我认为
-w --include-all-whitespace 默认情况下,显示的字符串中包括制表符和空格字符,但不包括其他空白字符(如换行符和回车符)。-w 选项会更改此设置,以便将所有空白字符视为字符串的一部分。
是解决方案,但我还没有测试过。
答案1
您必须确保使用的是最新版 GNU 字符串。点击此处获取:”https://www.gnu.org/software/binutils/. 编译并使用字符串的 -w 选项……