web-dev-qa-db-ja.com

ソフトウェアが32ビットか64ビットかを確認する方法

softwareが64ビットか32ビット(OSではない)かどうかを確認したい。このソフトウェアはexecutableファイルであり、チェックすると、64ビットまたは32ビットの場合、情報は提供されません。

ソフトウェアが64ビットか32ビットかを確認するにはどうすればよいですか?

29
Levan

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
37
Radu Rădeanu

この単純なコマンドは、実行可能ファイルが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はアーキテクチャ部分のみを取得し、stdoutにリダイレクトします。

または

このコマンドも試すことができます、

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