Linux 哪个节点指向usr/bin/node,cd-usr/bin/node不';不存在

Linux 哪个节点指向usr/bin/node,cd-usr/bin/node不';不存在,linux,node.js,bash,ubuntu,Linux,Node.js,Bash,Ubuntu,如果这是重复的话,我很抱歉:我读过几个类似的问题,但还没有找到一个解决方案来解释这一点。因为我对Linux(运行在Ubuntu12.04上的基本操作系统)很陌生,所以我想有一个具体的答案,这样我就不会意外地做一些非常愚蠢的事情 Node.js上的上次更新破坏了npm,我不知道如何修复它。快速修复的最简单方法似乎就是安装和重新安装,所以我学会了如何做到这一点。我将Chris Lea的ppa用于Node.js 但是遇到了一些问题。跑步时 $which node我得到了文件夹引用/usr/bin/no

如果这是重复的话,我很抱歉:我读过几个类似的问题,但还没有找到一个解决方案来解释这一点。因为我对Linux(运行在Ubuntu12.04上的基本操作系统)很陌生,所以我想有一个具体的答案,这样我就不会意外地做一些非常愚蠢的事情

Node.js上的上次更新破坏了npm,我不知道如何修复它。快速修复的最简单方法似乎就是安装和重新安装,所以我学会了如何做到这一点。我将Chris Lea的ppa用于Node.js

但是遇到了一些问题。跑步时
$which node
我得到了文件夹引用/usr/bin/node,因此我运行了
$cd/usr/bin/node
,得到了输出:
bash:cd:/usr/bin/node:没有这样的文件或目录
。所以我有一个对不存在的文件夹的引用,在重新安装之前我不知道要卸载它

我可以运行
node file.js
,但既不能运行
npm安装包
也不能运行
sudo npm安装包
。当使用sudo运行时(我知道这很愚蠢,但我不得不尝试‘因为我很沮丧’),系统上没有安装任何东西,它只列出包中的文件

不久前,我粘贴了一个bash脚本,它创建并将我的globals放在名为
.npm packages
的用户文件夹中。不过,我对Linux是如此陌生,我不知道如何解决这个问题。
.npm packages
中bin文件夹中的shebang全局工作

太迷路了-如果你能帮助我,我非常感激

非常感谢,
Anton

节点
是一个可执行文件,而不是目录。你不能用
cd
来播放它

您可以
cd
/usr/bin/
,这是包含
节点可执行文件的目录。

您不能将目录“更改为文件。”

使用ls-l/path/to/something检查路径,您可能会看到它是一个文件或符号链接。如果它是一个目录,它将列出内容

要列出目录中的信息,请尝试添加
d
标志。。例如:
ls-ld/directory/path


坚持住,这是学习过程中最困难的部分:-)

这就是我为了让它工作所做的:

步骤1:将~/.npm移动到~/.npm.bak

mv ~/.npm ~/.npm.bak
步骤2:再次安装全局npm包,以重新创建.npm 我安装了约曼-这将帮助我帮助你

npm install -g yo
第三步:按照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

感谢您的回复-我列出了/usr/bin/并得到:
lrwxrwx 1根根目录22 Mar 15 23:17 node->/etc/alternations/node
用于node,而
lrwxrwx 1根目录38 Jun 19 20:52 npm->../lib/node_modules/npm/bin/npm cli.js
用于npm。我该怎么办?我发现Linux的学习曲线非常陡峭,因此非常感谢您的帮助。很抱歉花了这么长时间才回复。