gpt4 book ai didi

javascript - 如何让 nodejs 脚本成为 linux 中的 CLI 工具?

转载 作者:行者123 更新时间:2023-11-30 09:33:52 24 4
gpt4 key购买 nike

我制作了一个 javascript 文件 mytool.js,它有一些依赖项(在 package.json 中)。

现在我可以执行输入了

~/mynodes/mytool $ node mytool

但是如果我更改工作目录,我将无法再使用此命令,因为之前它是在本地运行的。我想要实现的是能够只输入:

~$ mytool

(无论我在系统文件系统中的哪个位置,并且之前没有输入 node)。

Should I install it manually ?

如果是,在类 unix 系统中安装个人 nodejs 脚本的常用位置在哪里?

Or is there a npm-like command to install a personal script system wide ?

最佳答案

当您在 package.json 中添加“bin”键时:

  "bin": {
"mytool": "mytool.js"
},

然后你就可以使用 npm install -g 安装你的脚本,它会自动添加到它应该在的地方(到安装了其他全局安装的 cli 工具的地方,应该是在你的路径中)。

您可以将这个简单的项目视为示例:

它是作为 this answer 的示例创建的但它可以满足您的需求:

  1. 它只有一个脚本可以运行
  2. 它有外部依赖
  3. 可以全局安装
  4. 它可以在任何地方用一个命令运行

请注意,您不需要将脚本发布到 npm 就可以安装它 - 尽管您可以这样做,或者您也可以直接从 GitHub(包括私有(private)仓库)安装项目 - 但您也可以安装一个您在本地目录或 tarball 中的模块:

npm install -g module-on-npm
npm install -g user/repo-on-github
npm install -g /your/local/directory
npm install -g /your/local/tarball.tgz

有关更多选项,请参阅:

另外请记住,为了让您的程序能够从任何地方执行,如果您需要访问您的程序,您需要使用相对于 __dirname__filename 的路径拥有与您的代码相关的文件。见:

关于javascript - 如何让 nodejs 脚本成为 linux 中的 CLI 工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44700436/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com