Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 使用npm安装后未找到命令_Linux_Node.js_Bash_Npm_Osx Yosemite - Fatal编程技术网

Linux 使用npm安装后未找到命令

Linux 使用npm安装后未找到命令,linux,node.js,bash,npm,osx-yosemite,Linux,Node.js,Bash,Npm,Osx Yosemite,提前感谢您查看我的帖子 主要问题: 当我从命令行调用http服务器时,我必须做什么才能找到它 我觉得这个问题暴露了我在linux上的无能。如果我想从头开始使用node和home brew,在继续之前,我必须删除哪些文件和目录(或确保它们已通过卸载命令删除) 提前谢谢 背景 在我认为我修复了home brew(OS X 10.10使用了更新版本的Ruby)之后,在收到消息-bash:http server:command not found后,我尝试用npm重新安装http服务器。所以我运行了su

提前感谢您查看我的帖子

主要问题:

  • 当我从命令行调用http服务器时,我必须做什么才能找到它

  • 我觉得这个问题暴露了我在linux上的无能。如果我想从头开始使用node和home brew,在继续之前,我必须删除哪些文件和目录(或确保它们已通过卸载命令删除)

  • 提前谢谢

    背景

    在我认为我修复了home brew(OS X 10.10使用了更新版本的Ruby)之后,在收到消息
    -bash:http server:command not found
    后,我尝试用npm重新安装http服务器。所以我运行了
    sudonpm安装-ghttpserver
    。然后我得到一个包含
    npmhttpget的行的屏幕https://registry/npmjs.org/
    npm http 304https://registry/npmjs.org/
    。后者后面是
    ~.node/bin/http服务器->~.node/lib/node_模块/http服务器/bin/http服务器”和“http-server@0.7.3~.node/lib/node\u模块/http服务器

    注释

  • 我发现了这个
    /usr/local/bin/httpserver@
    ,我相信它是http服务器的符号链接

  • 似乎不存在链接
    http server->../lib/node\u modules/http server/bin/http server
    ,我不知道为什么

  • 文件夹
    /usr/local/lib/node\u modules/http服务器
    具有
    0.6.1
    0.7.3

  • 目录
    0.7.3
    只有一个package目录,后跟一个package.json文件。我很困惑,因为我本以为它不仅仅包含一个package.json

  • 我相信brew安装正确,因为
    哪个brew
    提供
    /usr/local/bin/brew

  • 另外,我得到了
    brew-vhomebrew0.9.5

  • 哪个npm
    给出了
    /usr/local/bin/npm
    (对于节点也是如此)

  • npm-v
    给出了
    1.4.28

  • 我的Path变量列在下面的第10项中(分门别类,以便更易于阅读)

    • $HOME/.npm(我手动将其放在这里,请参见下面的11了解原因)
    • /垃圾箱
    • /斯宾
    • /usr/bin
    • /usr/sbin
    • /usr/本地/bin
    • /usr/local/mysql/bin
    • /opt/X11/bin
  • $Home/.npm似乎有一个我随npm一起安装的软件包列表。我认为如果我放置$Home/.npm,它可能会看到http服务器,它位于这个目录中。但它似乎与上文第4点所述的结构相同

  • 我正在使用OSX10.10

  • 昨天我安装了X代码6.1,因为很明显,由于命令行问题,它是必需的

  • 全球安装 您是否使用npm全局安装了
    http服务器

    要全局安装模块(CLI需要此模块),必须启用全局标志:

    npm安装-ghttp服务器

    npm脚本 还可以在本地安装CLI模块,并从npm脚本运行它们

    在您的
    包.json中:

    ...
    devDependencies: {
        "http-server": "^0.8.5"
    },
    scripts: {
        "serve": "http-server ./public"
    }
    ...
    
    然后

    http-server ./public
    # unsuccessful
    
    npm run serve
    # successful