在 Linux 下,strings 命令可以从二进制文件、库文件、可执行程序中提取可见字符串,常用来“碰运气”找版本号。
下面按常见场景说明。
strings /path/to/binary | grep -i version
示例:
strings /usr/bin/nginx | grep -i version
常见关键词:
versionVERSIONv1.2.3releasebuildstrings /usr/bin/curl | grep -i version
strings /lib/x86_64-linux-gnu/libssl.so | grep -i version
strings mydriver.ko | grep -i version
strings binary | grep -Ei 'version|release|build'
strings -a -n 6 binary | grep -i version
-a:扫描整个文件-n 6:只显示长度 ≥6 的字符串strings /usr/sbin/nginx | grep -i 'nginx/'
strings /usr/lib/x86_64-linux-gnu/libssl.so | grep -i 'OpenSSL'
file unknown_bin
strings unknown_bin | head
strings unknown_bin | grep -iE 'ver|build|commit'
1.2.3-rc1-customcommand --version
command -V
rpm -qi pkg
dpkg -l | grep pkg
strings + grep是“兜底办法”,不是首选办法。
如果你有具体程序或文件,我可以给你精确命令。