在 Debian(以及大多数 Linux 系统)中,strings 是一个用来从二进制文件(可执行文件、库文件等)里提取可打印字符串的工具。下面按常见用法说明如何“导出”这些字符串。
strings 文件名
示例:
strings /bin/ls
这会把 /bin/ls 中的所有可打印字符串输出到终端。
strings /bin/ls > strings.txt
或追加:
strings /bin/ls >> output.txt
strings -n 6 /bin/ls
只显示长度 ≥ 6 的字符串。
strings -t x /bin/ls
-t x:十六进制-t d:十进制-t o:八进制示例输出:
4a3 /lib64/ld-linux-x86-64.so.2
strings -e l /bin/ls
常见编码:
s:7-bitS:8-bitl:16-bit little endianb:16-bit big endianstrings /bin/* > all_strings.txt
grep 使用(非常常见)strings /bin/ls | grep "error"
strings libfoo.so | grep -i version
通常已经随 binutils 安装:
sudo apt update
sudo apt install binutils
确认:
which strings
strings /usr/lib/x86_64-linux-gnu/libc.so.6 | grep GLIBC
如果你是想:
可以告诉我具体场景,我可以给你更针对性的命令。