strings 是 Linux 下一个非常实用的命令行工具,用来从二进制文件或非文本文件中提取可打印的字符串(通常是 ASCII/Unicode 文本)。它常用于“文件里到底藏着什么文字”这类问题。
下面按典型使用场景给你梳理一下,什么时候用 strings 最合适:
比如:
strings /bin/ls
可以看到:
✅ 适用场景:
安全分析中非常常见:
strings malware.bin
可能发现:
✅ 适用场景:
程序崩了但没日志?
strings app | grep -i "error"
可以确认:
例如:
strings myapp | grep "/etc"
常见发现:
比如:
strings memory.dump | grep "password"
✅ 适用场景:
strings firmware.bin
可能看到:
strings unknown.file | head
有时能一眼看出:
strings binary | grep -i "token"
常见组合:
strings + grepstrings + lessstrings + xxd(进一步分析)cat / less)只要文件“不是给人直接读的”,但你怀疑里面藏着文字,
strings就很合适。
如果你有具体使用场景(比如 CTF、取证、安全、开发),我也可以给你更针对性的例子。