需先安装binutils
包(含strings
命令):
sudo apt update
sudo apt install binutils
验证安装:strings --version
。
从二进制文件提取可打印字符串:
strings <文件路径>
示例:strings example.bin
。
选项 | 功能 | 示例 |
---|---|---|
-n <长度> |
设置最小字符串长度(默认4) | strings -n 6 file (仅显示≥6字符的字符串) |
-t <格式> |
指定偏移量格式(x =十六进制,d =十进制) |
strings -t x file (以十六进制显示偏移量) |
-e <编码> |
指定字符编码(ascii /utf8 /ibm ) |
strings -e utf8 file (提取UTF-8字符串) |
-a |
扫描整个文件(默认仅扫描数据段) | strings -a file |
-f |
显示文件名(处理多个文件时) | strings -f file1 file2 |
strings file > output.txt
grep
过滤:
strings file | grep "keyword"
strings file | grep -i "password\|secret"
find /path/to/dir -type f -exec strings {} \;
grep
或less
过滤。-a
选项扫描全文件,避免遗漏非数据段字符串。-e
可减少乱码。man strings
。