如何检查busybox版本(从busybox)?


15

我在嵌入式系统中使用busybox,我想检查其版本。如何从busybox中检查busybox版本?

Answers:


15

以调用busybox二进制文件busybox,您将获得Busybox版本的一行代码,还有几行绒毛,以及二进制文件中包含的实用程序列表。

busybox | head -1

如果使用调用大多数实用程序,则它们会显示一条使用情况消息--help,其中第一行是版本号。

ls --help 2>&1 | head -1

3

您可以通过运行带有--help标志的任何命令来查看使用情况,从而在运行busybox的任何系统上检查版本。用法调用的第一行包括有关busybox版本的注释:

$ cat --help
BusyBox v1.18.4 (2011-03-13 15:36:03 CET) multi-call binary.

Usage: cat [FILE]...

Concatenate FILEs and print them to stdout

如果您没有运行busybox但已将其安装在系统上,则可以通过实例化以下实用程序之一来进行检查:

$ busybox cat --help

(编辑:如Gilles所述,您也可以不使用命令而调用busybox二进制文件并获得相同的标头)

最后,手册页末尾还有一条注释,显示了它来自哪个版本:

$ man busybox | tail -n 1
version 1.18.4    2011-03-13     BUSYBOX(1)

我在嵌入式系统中使用busybox。如果我cat --version在上面键入,它将显示cat: unrecognized option '--version'
汤姆·布里托

我也尝试ls --version了相同的结果ls: unrecognized option '--version'
Tom Brito

@Tom,实际上@Gilles在这里有正确的答案,它在任何运行的标头中,因此busybox直接运行二进制文件最有意义。我的仅出于相同的原因工作,并引发错误。我会改正的。
Caleb

@Tom:我已固定答案,使用--help代替--version:)
Caleb

1

连接时是否不报告版本,

telnet 10.10.10.1

BusyBox v0.61.pre (2008.06.11-10:37+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

#

或运行(例如)

# busybox ash

BusyBox v1.17.1 (Debian 1:1.17.1-8) built-in shell (ash)
Enter 'help' for a list of built-in commands.

#
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.