Comment vérifier si mon logiciel est 32 bits ou 64 bits


30

Je veux vérifier si mon logiciel est 64 bits ou 32 bits (pas le système d'exploitation). Ce logiciel est un fichier exécutable , et lorsque je le vérifie, aucune information n'est donnée s'il s'agit de 64 bits ou 32 bits.

Comment vérifier si mon logiciel est 64 bits ou 32 bits?

Réponses:


39

Vous pouvez utiliser la filecommande pour vérifier quel format a cet exécutable. Par exemple:

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

Cette commande simple vous montrera si le fichier exécutable est 32 bits (i386) ou 64 bits (amd64).

Syntaxe:

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

Exemple:

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

Explication:

dpkg -Scommande saisit le package auquel le fichier appartient réellement. apt-cache show packageLa commande affichera les détails du package. À partir de ces détails, awk ne saisit que la partie Architecture et la redirige vers stdout.

OU

Vous pouvez également essayer cette commande,

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

1
cut -d: -f1serait plus court ici, et notez que cela ne fonctionne que pour les packages installés, pas un fichier aléatoire dans votre dossier de départ. Peut xargs -r- être est plus approprié au cas où la dpkg -Scommande retourne vide.
Lekensteyn

Cela ne fonctionne que si le logiciel provient d'apt / dpkg, tandis que l'autre réponse fonctionne toujours, peu importe d'où il vient.
Joseph Sible-Reinstate Monica
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.