获取可执行文件的计算机信息

2024-10-01 11:29:27 发布

您现在位置:Python中文网/ 问答频道 /正文

< P>我在不同的体系结构(x8664,ARM32等)中使用不同的C++可执行文件,在我的Python 3项目中的文件夹中有不同的名称。当我在相应的体系结构上运行项目时,我会使用其中的一个。目前,我在各种体系结构中运行之前更改了可执行文件的路径。 有人能给我建议去:

  • 查找这些可执行文件的机器架构信息(无论是arm32、x86等)或获取可执行文件 为运行代码的体系结构或中的体系结构编译 这些可执行文件是哪台机器或哪种体系结构 遵守

我试图用python检查平台库,但没有得到任何有效的解决方案。如何在Python3中实现上述任何一项


Tags: 项目路径文件夹名称机器信息可执行文件架构
1条回答
网友
1楼 · 发布于 2024-10-01 11:29:27

要查找当前平台的体系结构,您需要platform库中的^{}

import platform

uname = platform.uname()
uname.machine

'x86_64'

编辑:查找已编译二进制文件的目标体系结构更加困难。总会有一个操作系统调用告诉您二进制文件是否编译为在该操作系统的特定体系结构上运行,但是很难找到任意二进制文件的编译目标。根据您所处的平台,您可以做以下几件事:

以下是macOS的一个示例:

import subprocess

result = subprocess.run(['file', '/bin/cat'], stdout=subprocess.PIPE)
result.stdout.decode("utf-8").strip().split(' ')

['/bin/cat:', 'Mach-O', '64-bit', 'executable', 'x86_64']

相关问题 更多 >