Gibt es ein Befehlszeilentool zum Überprüfen von 32-Bit oder 64-Bit eines Exes?
Ja
c:\Program Files (x86)\GnuWin32\bin>file file.exe file.exe; PE32 executable for MS Windows (console) Intel 80386 32-bit c:\Program Files (x86)\GnuWin32\bin>cd ..\..\evernote\evernote c:\Program Files (x86)\Evernote\Evernote>file evernote.exe evernote.exe; PE32 executable for MS Windows (GUI) Intel 80386 32-bit c:\Program Files (x86)\Evernote\Evernote>cd c:\Program Files\Internet Explorer c:\Program Files\Internet Explorer>file iexplore.exe iexplore.exe; PE32+ executable for MS Windows (GUI) Mono/.Net assembly
Das PE32-Format steht für Portable Executable 32-Bit, während PE32 + das Portable Executable 64-Bit-Format ist.
Siehe http://gnuwin32.sourceforge.net/packages/file.htm
mögen:
is64 abc.exe
1
Nicht genau so.
Sie können die -b
Option verwenden, um den Dateinamen von der Ausgabe auszuschließen. Dann benötigen Sie etwas Befehlszeilen-Kung-Fu, um das erste Wort (PE32 oder PE32 +) zu extrahieren, vergleichen Sie es mit PE32 + und verwenden Sie das in Ihrer ìf`-Anweisung.
Windows 10
Wenn Sie unter Windows 10 über das Jubiläums-Update verfügen, können Sie, wenn Sie die Bash-Shell aktivieren, eine Bash-Shell öffnen und den file
Befehl so verwenden
rgb@MYPCNAME:/mnt/c$ file install.exe install.exe: PE32 executable (GUI) Intel 80386, for MS Windows
oder
rgb@MYPCNAME:/mnt/c/Program Files/Internet Explorer$ file ieinstal.exe ieinstal.exe: PE32+ executable (GUI) x86-64, for MS Windows