Come verificare se il mio software è a 32 o 64 bit


30

Voglio verificare se il mio software è a 64 bit o 32 bit (non il sistema operativo). Questo software è un file eseguibile e quando lo controllo, non viene fornita alcuna informazione se è a 64 o 32 bit.

Come posso verificare se il mio software è a 64 o 32 bit?

Risposte:


39

Puoi usare il filecomando per verificare quale formato ha quell'eseguibile. Per esempio:

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

Questo semplice comando ti mostrerà se il file eseguibile è a 32 bit (i386) o 64 bit (amd64).

Sintassi:

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

Esempio:

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

Spiegazione:

dpkg -SIl comando prende il pacchetto a cui appartiene effettivamente il file. apt-cache show packagecomando mostrerà i dettagli sul pacchetto. Da questi dettagli, awk prende solo la parte Architecture e la reindirizza su stdout.

O

Puoi provare anche questo comando,

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

1
cut -d: -f1sarebbe più breve qui, e nota che questo funziona solo per i pacchetti installati, non per alcuni file casuali nella tua cartella home. Forse xargs -rè più appropriato nel caso in cui il dpkg -Scomando ritorni vuoto.
Lekensteyn,

Funziona solo se il software proviene da apt / dpkg, mentre l'altra risposta funziona sempre indipendentemente da dove provenga.
Joseph Sible: ripristina Monica il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.