strings 是 Linux 下常用的命令行工具,用于从二进制文件、数据文件等中提取可打印字符串。下面是常用参数及说明(以 GNU strings 为准,不同版本略有差异)。
strings [选项] 文件...
-n / --bytes=指定最小字符串长度(默认是 4):
strings -n 6 test.bin
只显示长度 ≥ 6 的字符串。
-a / --all扫描整个文件(默认行为,通常可省略):
strings -a test.bin
-t / --radix=以指定进制显示字符串的偏移地址:
-t x:十六进制-t o:八进制-t d:十进制strings -t x test.bin
-e / --encoding=指定字符编码格式:
s:7-bit ASCII(默认)S:8-bit ASCII(单字节)b:16-bit big-endianl:16-bit little-endianB:32-bit big-endianL:32-bit little-endianstrings -e l test.bin
-f / --print-file-name在输出字符串前显示文件名:
strings -f *.bin
-o以八进制显示字符串偏移(等价于 -t o):
strings -o test.bin
--help显示帮助信息:
strings --help
--version显示版本信息:
strings --version
strings /bin/ls
strings -t x /bin/ls
strings -n 8 program
strings -f *.so
strings -e l file.exe
strings 只能提取连续可打印字符如果你需要 busybox strings、macOS strings 或 特定版本参数差异,也可以告诉我。