你说的 “Ubuntu Strings” 可能有几种不同含义,我分别说明,你可以对照查看对应方法。
这是最常见的含义,用于从二进制文件中提取可读字符串。
一般已随 binutils 安装:
sudo apt update
sudo apt install binutils
strings /path/to/binary
示例:
strings /bin/ls
strings -n 6 /bin/ls # 只显示长度 ≥ 6 的字符串
strings -e l /bin/ls # 指定编码(l=16-bit little-endian)
lsb_release -a
或:
cat /etc/os-release
uname -a
Ubuntu 使用 .mo 文件存储翻译字符串。
find /usr/share/locale -name "*.mo"
需要安装工具:
sudo apt install gettext
查看:
msgunfmt /path/to/file.mo
dpkg -x package.deb extract_dir/
strings extract_dir/usr/bin/xxx
常用组合:
strings -n 8 binary | grep -i "error\|password\|key"
或配合 objdump / radare2 / ghidra 使用。
源码在 binutils 中:
apt source binutils
你也可以直接告诉我:
我可以给你更精确的命令和示例。