小智 10
它比这更容易,只需使用process.arch.它将返回x64或x32取决于架构.
Âng*_*tto 10
您只需在终端上运行以下代码:
node -e "console.log(process.arch)"
Run Code Online (Sandbox Code Playgroud)
这将返回您的 Node 构建的架构。检查您是否在 MacOS 上的 Rosetta 2 中运行非常有用。
我会使用process.env['MACHTYPE']或process.env['HOSTTYPE']。如果其中之一是undefined,则检查uname -m(这应该适用于所有 POSIX 系统,尽管输出实际上可以是任何字符串,请参阅 uname(1P))。
var exec = require('child_process').exec, arch;
exec('uname -m', function (error, stdout, stderr) {
if (error) throw error;
arch = stdout;
});
Run Code Online (Sandbox Code Playgroud)
好吧,可能它并不像您希望的那么简短,但是您可能会发现大量的 shell 脚本,它们可以为您运行的任何系统执行此操作,并且您可以只运行此类脚本。这样,您只需运行一件事并检查 Node 应用程序的输出。
另一种解决方案是用 C++ 为 Node 编写一个模块,该模块将检查低级系统功能,包括字节顺序以及可能需要检查的其他任何内容。有很多关于如何检查这些事情的例子。
| 归档时间: |
|
| 查看次数: |
3591 次 |
| 最近记录: |