在 Linux 下,strings 命令可以从二进制文件、库文件或可执行程序中提取可打印字符串,常用来“碰运气”找版本号。
下面按常见场景说明。
strings /path/to/binary | grep -i version
示例:
strings /bin/ls | grep -i version
strings file | grep -iE 'version|release|v[0-9]'
strings file | grep -E '[0-9]+\.[0-9]+(\.[0-9]+)?'
strings /usr/bin/nginx | grep -i version
strings /lib/x86_64-linux-gnu/libc.so.6 | grep -i version
file binary_file
strings libc.so.6 | grep -i "glibc"
示例输出:
GNU C Library (Ubuntu GLIBC 2.35-0ubuntu3.1) stable release version 2.35
./binary --version
binary -V
readelf -p .comment binary
rpm -qf /path/to/binary
dpkg -S /path/to/binary
strings /usr/bin/openssl | grep -i "OpenSSL"
strings module.ko | grep -i version
strings 不一定能看到真实版本如果你有具体文件或软件(如 nginx / python / so 文件),可以告诉我,我可以直接给你最准的命令。