node_modules中的.bin目录的目的是什么?什么是二进制文件?

7

.bin目录在node_modules中有什么作用?

另一个问题中,答案者说:

"它是存放你的Node模块可执行文件的位置。"

此外,可以有人解释一下以下内容:什么是二进制文件/可执行文件

任何帮助都将不胜感激!


可能是What is the purpose of .bin folder in node_modules?的重复问题。 - João Pimentel Ferreira
2
Joao,我在这个问题中提到了一个答案,并且问了这个问题,因为那个问题的答案中缺少了那些信息。我知道它包含二进制文件,但我想知道什么是二进制文件。 - nCardot
2个回答

8

二进制或可执行文件是已经针对您特定的计算机体系结构编译的文件,安装后,这些文件可以在计算机上直接运行。常见的指令集体系结构有:大多数计算机处理器都基于的X86ARM。与二进制文件相反,源代码文件是实际的源代码本身,需要在安装之前进行编译。

至于.bin目录,在./node_modules/.bin中,此目录存储了所有您的项目依赖的node_modules的可执行文件。这使得您的项目只需要运行必要的库,而不必担心自己编译这些文件。通过编译我指的是将源代码转换为可执行代码(机器码),可以被您计算机底层的处理器理解。

希望这能帮到您!


2
根据npm文档,当处于全局模式时,可执行文件会在Unix系统上链接到{prefix}/bin目录中,在Windows系统上则直接链接到{prefix}目录中。当处于本地模式时,可执行文件会链接到./node_modules/.bin目录中,以便可以在通过npm运行的脚本中使用(例如,在运行npm test时将测试运行程序添加到路径中)。二进制文件是可执行文件(特定计算机架构的编译版本),一旦安装,它们可以直接从您的计算机上运行。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接