我很抱歉,如果这是重复的:我已经阅读了几个类似的问题,但还没有找到解释这个问题的解决方案。由于我对Linux(在Ubuntu 12.04上运行的初级操作系统)很陌生,我想得到一个具体的答案,所以我不小心做了一些非常愚蠢的事情。
Node.js的最新更新打破了npm,我不知道如何修复它。快速修复的最简单方法似乎只是安装和重新安装,所以我学会了如何做到这一点。我使用Chris Lea的ppa作为Node.js。
但是遇到了一些问题。跑步时
$ which node
我得到文件夹引用/ usr / bin / node,然后我运行了$ cd /usr/bin/node
,得到了输出:
bash: cd: /usr/bin/node: No such file or directory
。所以我有一个不存在的文件夹的引用,我不知道在重新安装之前卸载。
我能够node file.js
但npm install package
或sudo npm install package
无法投放。当使用sudo运行时(我知道这很愚蠢 - 但我不得不尝试“我非常沮丧”)系统上没有安装任何内容,只是列出了包中的文件。
我刚才粘贴了一个bash脚本,它创建了我的全局变量并将其放在我的用户文件夹中,名为.npm-packages
的文件夹中。我虽然对Linux很陌生,但我不知道如何解决这个问题。来自.npm-packages
中bin文件夹的shebangs全局工作。
如此迷失 - 如果你能帮助我,我不仅仅是感恩。
非常感谢, 安东
答案 0 :(得分:5)
node
是可执行文件,而不是目录。你不能cd
到它。
您可以cd
到/usr/bin/
这是包含node
可执行文件的目录。
答案 1 :(得分:0)
您无法将“目录”更改为文件..
使用ls -l /path/to/something
检查路径,您可能会看到它的文件或符号链接。如果它是一个目录,它将列出内容。
要列出目录信息,请尝试添加d
标记.. EG:ls -ld /directory/path
在那里,这是学习曲线中最难的部分: - )
答案 2 :(得分:-2)
这就是我为使其发挥作用所做的事情:
步骤1:将〜/ .npm移动到〜/ .npm.bak
mv ~/.npm ~/.npm.bak
步骤2:再次安装全局npm包,重新创建.npm 我安装了Yeoman - 这将帮助我帮助你!
npm install -g yo
步骤3:按照Yeoman告诉你的内容并粘贴它给你的echo命令
[Yeoman Doctor] Uh oh, I found potential errors on your machine
// lots of text here
...
Or run this command
echo "export NODE_PATH=$NODE_PATH:/home/user/npm/lib/node_modules" >> ~/.bashrc && source ~/.bashrc