温馨提示×

linux strings参数有哪些

小樊
37
2026-07-18 11:26:45
栏目: 智能运维

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-endian
  • l:16-bit little-endian
  • B:32-bit big-endian
  • L:32-bit little-endian
strings -e l test.bin

-f / --print-file-name

在输出字符串前显示文件名

strings -f *.bin

-o

以八进制显示字符串偏移(等价于 -t o):

strings -o test.bin

--help

显示帮助信息:

strings --help

--version

显示版本信息:

strings --version

常见示例

从 ELF 可执行文件中提取字符串

strings /bin/ls

显示字符串及其偏移(十六进制)

strings -t x /bin/ls

指定最小长度

strings -n 8 program

同时处理多个文件并显示文件名

strings -f *.so

提取 UTF-16(小端)字符串

strings -e l file.exe

注意事项

  • strings 只能提取连续可打印字符
  • 无法保证字符串语义完整(可能截断)
  • 常用于:
    • 逆向分析
    • 查找硬编码路径、密码、调试信息
    • 分析二进制文件内容

如果你需要 busybox stringsmacOS strings特定版本参数差异,也可以告诉我。

0