我正在尝试使用节点执行基本的CLI,但是似乎它不是从/链接到正确的目录。
我有一个名为 create 的文件,其中包含命令:console.log(process.cwd());
当我以bash node create
运行时,结果如下:
/Users/katya/Desktop/code/drawer
。
但是,在运行npm link
(或sudo npm link
)之后,它会打印出:
/Users/katya/.npm-packages/bin/dosmth -> /Users/katya/.npm-packages/lib/node_modules/drawer/create
/Users/katya/.npm-packages/lib/node_modules/drawer -> /Users/katya/Desktop/code/drawer
然后在bash中运行dosmth
,我得到:
bash: dosmth: command not found
我认为与./npm-packages/
出现在路径中有关。
我试图从计算机上完全删除节点并重新安装,但没有帮助。
如果您有任何想法,我将非常感谢您的帮助。
我的 package.json :
{
"name": "drawer",
"version": "1.0.0",
"description": "",
"main": "index.js",
"bin": {
"dosmth": "create"
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
非常感谢您,
问候
Katya
答案 0 :(得分:0)
从昨天开始,我有:
1.已安装酿造
2.在Mac上安装/卸载的 Node (现在具有 Brew )
3.在所有与节点相关的目录上运行rm -rf
和sudo rm -rf
不过,当我运行npm link
或sudo npm link
时,它没有选择必要的目录并显示bash: my-command: command not found
。
非常感谢您提出任何建议。非常感谢
Katya
答案 1 :(得分:0)
您是否尝试过将bin更改为指向index.js?
pylablib