如何确定我是否安装了64位或32位节点可执行文件?

在我的Windows PC上,我安装了nodejs。 我想确定它是64位还是32位。 怎么能确定呢? 我执行了

node --help 

但似乎没有任何select给我所需的信息。

如果节点已安装且可执行,则只需运行即可

 c:\> node > process 

你应该看到格式化processvariables的内容。 那里的archplatform指示你的操作系统。 在下面的例子中,它是一个Windows 7 x64

 { title : 'Administrator: C:\\Windows\\System32\\cmd.exe - node ', version : 'v0.10.36', moduleLoadList : [ 'Binding evals', ... 'Binding signal_wrap', 'NativeModule string_decoder'], versions : { http_parser : '1.0', node : '0.10.36', v8 : '3.14.5.9', ares : '1.9.0-DEV', uv : '0.10.30', zlib : '1.2.8', modules : '11', openssl : '1.0.1l' }, arch : 'x64', platform : 'win32', argv : ['node'], execArgv : [], env : { ALLUSERSPROFILE : 'C:\\ProgramData', HOMEDRIVE : 'C:', JAVA_HOME : 'C:\\Program Files\\Java\\jdk1.8.0_05', NODEJS : 'C:\\Program Files (x86)\\nodejs\\', NUMBER_OF_PROCESSORS : '4', OS : 'Windows_NT', Path : 'C:\\ProgramData\\Oracle\\Java\\javapath;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;', PATHEXT : '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY', PROCESSOR_ARCHITECTURE : 'AMD64', PROCESSOR_IDENTIFIER : 'Intel64 Family 6 Model 42 Stepping 7, GenuineIntel', PROCESSOR_LEVEL : '6', PROCESSOR_REVISION : '2a07', ProgramData : 'C:\\ProgramData', ProgramFiles : 'C:\\Program Files', 'ProgramFiles(x86)' : 'C:\\Program Files (x86)', ProgramW6432 : 'C:\\Program Files', PROMPT : '$P$G', PUBLIC : 'C:\\Users\\Public', PYTHON : 'C:\\Python34', SESSIONNAME : 'Console', SystemDrive : 'C:', SystemRoot : 'C:\\Windows', windir : 'C:\\Windows', windows_tracing_flags : '3' }, features : { ... }, config : { ... } } 

如果它是在Windows操作系统上,只要走一个老派的方式..通过使用Windows任务pipe理器

这是我的尝试:

只需从命令提示符运行node

C:\> node

这将把节点放入REPL模式(用符号表示)。 现在打开任务pipe理器(Ctrl + Shift + Esc)来查看node.exe进程的详细信息。 我的Windows 10 64位,安装了32位节点。 确保启用“平台”列以查看32位/ 64位信息。

在这里输入图像说明

从命令行运行这个:

 node -p "process.arch" 

它会返回“arm”,“ia32”或“x64”。

在mac

 $ node > require('os').arch() 

在窗口中

 c:\> node > require('os').arch() 

那么我build议的方式根本不是一个好方法。 你可以去C:然后去程序文件,并在那里searchnodejs文件夹。 如果发现,那么你正在运行64位版本,否则检查程序文件(x86)。 如果在那里发现,那么你正在运行32位版本。

这可能不会直接解决您的问题,因为我不知道在Windows上获得相同行为的最佳方法,但在Unix或Linux系统上使用file命令将告诉您可执行文件的处理器体系结构:

 $ file `which node` /usr/local/bin/node: Mach-O 64-bit executable x86_64 

如果你安装了Cygwin,我很确定它提供了一个file命令,否则你可以在线检查在Windows上工作的类似程序。

只需通过运行node启动节点解释器即可。 那么在这个process.env中, process.env会给你一个json提供你需要的所有信息。 我的尝试有一个PROCESSOR_ARCHITECTURE: 'AMD64'条目。

我也发现

ProgramFiles: 'C:\\Program Files', 'ProgramFiles(x86)': 'C:\\Program Files (x86)' ProgramW6432: 'C:\\Program Files'