温馨提示×

Debian strings如何查看

小樊
58
2026-07-27 02:14:43
栏目: 智能运维

在 Debian(及大多数 Linux 发行版)里,“查看 strings”通常指使用 strings 命令:用来从二进制文件、核心转储或任意文件中提取可打印字符串。

下面按常见使用场景说明。


一、什么是 strings

strings 会扫描文件中的可打印字符序列(默认长度 ≥ 4),常用于:

  • 查看二进制程序里的字符串
  • 分析库文件、ELF、so、a.out
  • 调试或逆向分析
  • 取证、排查问题

二、检查是否已安装

strings --version

如果没有:

sudo apt update
sudo apt install binutils

(Debian 上 strings 属于 binutils 包)


三、基本用法

1️⃣ 查看二进制文件中的字符串

strings /bin/ls

常见输出:

/lib64/ld-linux-x86-64.so.2
Usage: %s [OPTION]... [FILE]...
GNU coreutils

2️⃣ 重定向到 less(推荐)

strings /usr/bin/python3 | less

3️⃣ 查看指定长度以上的字符串

strings -n 6 /bin/ls

只显示 至少 6 个连续可打印字符 的字符串


4️⃣ 显示字符串在文件中的偏移

strings -t x /bin/ls

或十进制:

strings -t d /bin/ls

四、结合 ELF 文件(Debian 常见)

只看数据段

strings -d /bin/ls

只看代码段

strings -t x /bin/ls | grep "^[0-9a-f]*[0-9a-f]$"

五、查找特定字符串

strings /bin/ls | grep error

例子:找库依赖

strings /bin/ls | grep libc

六、查看共享库中的字符串

strings /lib/x86_64-linux-gnu/libc.so.6

用于:

  • 看支持的 glibc 版本
  • 查找 ABI、符号信息

七、从 core dump 或任意文件读取

strings core
strings image.img

八、常用参数速查

参数 说明
-n N 最少 N 个可打印字符
-t x 显示十六进制偏移
-t d 显示十进制偏移
-d 仅扫描数据段
-a 扫描整个文件(默认)

九、示例:分析一个程序

file myapp
strings myapp | less
strings -n 8 -t x myapp | grep -i copyright

十、注意事项

  • strings 只看静态数据,不能恢复运行时内存
  • 无法保证字符串完整或顺序
  • 不适合作为完整逆向工具(可配合 objdump, gdb, radare2)

如果你说的 “Debian strings” 是指:

  • 软件包描述里的 strings
  • gettext / i18n 中的字符串
  • 源码中的字符串
  • 某个程序输出中的 strings

可以再具体说明,我可以针对性示例。

0 踩