简短结论:strings 不能“恢复”数据,只能从已有文件中提取可见文本字符串,通常作为数据挽救或取证中的辅助手段。
下面详细说一下:
strings 是做什么的strings 是 Ubuntu / Linux 下的一个命令行工具,作用是:
从一个二进制文件、镜像、分区、磁盘设备中,提取出可打印的字符序列(比如 ASCII / UTF-8 文本)。
例如:
strings disk.img | less
strings /dev/sdb | grep "password"
它能看到的东西包括:
strings 不能做什么(重点)❌ 不能恢复被覆盖的数据
❌ 不能恢复已删除文件的完整内容
❌ 不能恢复格式化后的文件系统结构
❌ 不能恢复图片、视频、加密数据本身
如果文件已经被:
rm 后写入新数据那 strings 基本无能为力。
strings 有点用在数据恢复或取证中,strings 常用于:
✅ 磁盘镜像中找残留文本
✅ 找出配置文件、账号、路径线索
✅ 判断设备里曾经存在过什么内容
✅ 配合 grep 搜索关键信息
例如误删数据库文件后,可能还能看到:
INSERT INTO users VALUES (1,'alice'...)
但这只是碎片,不是完整恢复。
如果是 Ubuntu 下误删或丢失数据,更合适的是:
extundelete(ext4 误删)testdisk(分区恢复)photorec(文件签名恢复)dd + 专业恢复软件dd if=/dev/sdb of=disk.img bs=4M
strings是“看一眼残骸里写了什么”,不是“把残骸拼回原样”。
如果你愿意,可以告诉我:
我可以给你更具体的恢复建议。