简短回答:不能直接用,但有替代方案。
strings 是什么strings 是 GNU binutils 里的一个工具,用于从二进制文件中提取可打印字符串。
Linux 默认自带,但 macOS 默认没有 GNU 的 strings。
stringsstringsmacOS 其实自带一个 strings,但它是 BSD 版本,不是 GNU 版本:
strings yourfile
功能类似,但:
strings-n、-e)行为可能不同如果你想用和 Linux 完全一致的 strings:
brew install binutils
安装后,GNU 版本通常在:
/usr/local/opt/binutils/bin/strings
你可以直接用完整路径,或加别名:
alias strings="/usr/local/opt/binutils/bin/strings"
如果只是想“看字符串”,也可以用:
cat file | tr -c '[:print:]\n' '.'
或:
grep -a -o '[[:print:]]*' file
| 系统 | 是否有 strings |
|---|---|
| Linux | ✅ GNU strings |
| macOS | ⚠️ BSD strings(自带) |
| macOS + Homebrew | ✅ GNU strings |
如果你愿意,我可以帮你对比 Linux 和 macOS strings 参数差异,或者给你一个跨平台脚本。