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


30

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

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

回答:


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

これは、ソフトウェアがapt / dpkgから来た場合にのみ機能しますが、他の答えは、どこから来た場合でも常に機能します。
ジョセフ・シブル復興モニカ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.