strings 是 Linux 下一个常用的命令行工具,用来从一个文件(通常是二进制文件)中提取可打印的字符串。
strings 会扫描文件内容,找出长度足够、看起来像“文本字符串”的连续可打印字符序列,然后输出出来。
常用于:
strings 文件名
strings /bin/ls
输出类似:
/lib64/ld-linux-x86-64.so.2
GNU C Library
Usage: %s [OPTION]... [FILE]...
strings -n 6 文件名
只输出 长度 ≥ 6 的字符串。
strings -t x 文件名
-t x:十六进制偏移-t d:十进制-t o:八进制示例:
strings -t x /bin/ls
输出:
8048000 /lib64/ld-linux-x86-64.so.2
strings -e l 文件名
-e 指定字符编码:
s:7-bit ASCII(默认)l:16-bit little-endianb:16-bit big-endianB:32-bit big-endianstrings binary | grep password
strings binary | grep https
strings app | grep -i pass
strings a.out
strings unknown_bin > strings.txt
strings 不会解析程序逻辑⚠️ 不能用来“解密”或“反编译”程序
strings是 Linux 下从二进制文件中提取可读字符串的工具,常用于分析、调试和安全审计。
如果你愿意,我也可以:
strings vs objdump / xxd