Linux 下 npm 全局安装包,无法执行(No such file or directory)

引子:自己写了一个 dogsay 命令行美化工具(cli),之前一直在 MacOS 和 Windows 中使用,但是最近配置在了 Linux 中,报错。

报错

-bash: /root/.nvm/versions/node/v19.4.0/bin/dogsay:node:解释器错误: No such file or directory
或:
-bash: /root/.nvm/versions/node/v19.4.0/bin/dogsay:node:Interpreter error: No such file or directory

解决方法:

在你的 可执行文件 的 头部 添加 #! /usr/bin/env node

什么是可执行文件(如何确定可执行文件):

如果这个 cli 是你自己开发的,打开 package.json,找到 bin 下文件,我这里是 dogsay.js 。


可执行文件

如果这个 cli 不是你开发的,进入刚才报错的路径 例如我这里是 /root/.nvm/versions/node/v19.4.0/bin

cd /root/.nvm/versions/node/v19.4.0/bin
# 然后查看当前 node 环境中的所有全局安装命令
ls

可以看到可执行文件(我这里是 dogsay):


可执行文件位置
在可执行文件头部添加 #! /usr/bin/env node

然后 给可执行文件 添加 #! /usr/bin/env node

vim dogsay
可执行文件

#! /usr/bin/env node是什么 ???

#!/usr/bin/env node 到底是什么拾掇时光的印记的博客-CSDN博客#! /usr/bin/env node

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容