温馨提示×

linux strings参数怎么用

小樊
36
2026-10-11 08:40:56
栏目: 智能运维

strings 是 Linux 下常用的命令,用来从二进制文件或任意文件中提取可打印的字符串(通常是 ASCII / Unicode 文本),常用于分析程序、日志、取证等。


一、基本用法

strings 文件名

示例:

strings /bin/ls

会输出 ls 二进制文件中所有可打印的字符串。


二、常用参数详解

1️⃣ -n(指定最小长度)

默认只显示长度 ≥ 4 的字符串。

strings -n 6 file

表示只显示 长度 ≥ 6 的字符串。


2️⃣ -a / --all

扫描整个文件(默认可能只扫描某些段)。

strings -a file

3️⃣ -f(显示文件名)

多个文件时很有用。

strings -f *

输出示例:

a.out: Usage: program
b.bin: hello world

4️⃣ -e(指定字符编码)

常见选项:

  • s:7-bit ASCII(默认)
  • S:16-bit
  • b:16-bit Big Endian
  • l:32-bit Little Endian

示例(提取 UTF-16 字符串):

strings -e S file

5️⃣ -t(显示偏移地址)

非常有用,用于定位字符串在文件中的位置。

strings -t x file   # 十六进制
strings -t d file   # 十进制
strings -t o file   # 八进制

示例:

strings -t x /bin/ls

输出:

1a2f hello
1a35 world

6️⃣ 结合 -n 和 -t

strings -n 8 -t x binary

三、实用示例

查找二进制中的敏感信息

strings app | grep -i password

分析可疑文件

strings -a -n 5 suspicious.bin

查看 ELF 中的路径

strings /bin/ls | grep /

四、常见使用场景

✅ 逆向分析
✅ 查找硬编码密码 / URL
✅ 确认程序版本信息
✅ 取证分析


如果你有具体文件类型或分析目的(比如 ELF、固件、恶意样本),我可以给你更针对性的命令。

0 踩