如何检查我的软件是32位还是64位


30

我想检查我的软件是64位还是32位(不是操作系统)。该软件是一个可执行文件,当我检查它时,不会给出任何信息,无论它是64位还是32位。

如何检查我的软件是64位还是32位?

Answers:


39

您可以使用该file命令检查可执行文件的格式。例如:

file /usr/bin/gedit
/usr/bin/gedit: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x5a388215eb6f60b420fc3b6d68ec52d563071f84, stripped

4

这个简单的命令将向您显示可执行文件是32位(i386)还是64位(amd64)。

句法:

apt-cache show $(dpkg -S /path/to/the/file | awk -F ':' '{print $1 }') | awk '/Architecture:/ {print $2}' -

例:

$ apt-cache show $(dpkg -S /usr/bin/gedit | awk -F ':' '{print $1 }') | awk '/Architecture:/ {print $2}' -
amd64

说明:

dpkg -S命令获取文件实际所属的包。apt-cache show package该命令将显示有关该软件包的详细信息。awk仅从该详细信息中获取Architecture部分并将其重定向到stdout。

要么

您也可以尝试使用此命令,

$ dpkg -l $(dpkg -S /usr/bin/gedit | awk -F ':' '{print $1 }') | awk '/ii/ {print $4}'
amd64

1
cut -d: -f1在这里会更短,请注意,这仅适用于已安装的软件包,不适用于主文件夹中的某些随机文件。xargs -r如果dpkg -S命令返回空,也许更合适。
Lekensteyn 2014年

仅当软件来自apt / dpkg时,此方法才有效,而无论答案来自何处,其他答案始终有效。
约瑟夫·西布尔-恢复莫妮卡
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.