linux下安裝nodejs出現 npm-cli.js: No such file or director 的真正解決方案

今天在centos下安裝nodejs
官網下載安裝包
解壓
扔到遠程機器上
添加環境變量
執行

>node -v
v10.14.2

正常

執行

>npm -v
*******/npm: line 1: ../lib/node_modules/npm/bin/npm-cli.js: No such file or directory

報錯了
看一眼,沒這個文件?
去對應目錄看一下,有這個文件啊
那就是路徑的問題
去bin下面看一下npm文件
裏面怎麼是相對路徑呢,改成絕對路徑
再執行

>npm -v
Usage: npm <command>

where <command> is one of:
    access, adduser, audit, bin, bugs, c, cache, ci, cit,
    completion, config, create, ddp, dedupe, deprecate,
    dist-tag, docs, doctor, edit, explore, get, help,
    help-search, hook, i, init, install, install-test, it, link,
    list, ln, login, logout, ls, outdated, owner, pack, ping,
    prefix, profile, prune, publish, rb, rebuild, repo, restart,
    root, run, run-script, s, se, search, set, shrinkwrap, star,
    stars, start, stop, t, team, test, token, tst, un,
    uninstall, unpublish, unstar, up, update, v, version, view,
    whoami

npm <command> -h  quick help on <command>
npm -l            display full usage info
npm help <term>   search for help on <term>
npm help npm      involved overview

Specify configs in the ini-formatted file:
    /root/.npmrc
or on the command line via: npm <command> --key value
Config info can be viewed via: npm help config

[email protected] /app/nodejs/lib/node_modules/npm

怎麼不出版本號
再換其他命令試試

npm install
npm version

怎麼全都是返回上面這個東西

網上搜搜,有些解決方案,讓執行個腳本什麼的
我覺得不應該啊,nodejs發展這麼久了,怎麼可能連linux的安裝都還是半成品呢,這問題一定是存在在我身上

再轉回從頭捋

看回下載的node安裝包,發現問題了

用軟件把安裝包打開
bin目錄下npm和npx兩個文件都是0字節
但是我上傳上去的卻是38字節

這原來是windows和linux兩個文件系統不一樣導致的
這兩個文件是兩個linux的軟連接
windows中並沒有和linux軟連接一樣的東西
因此解壓的時候將這兩個文件變成了內部包含鏈接地址的文本

../lib/node_modules/npm/bin/npm-cli.js

用這個再去執行的時候自然就遇到了相對路徑的問題

真正的解決方法就是去linux下面解壓

tar -xJvf node-v10.16.3-linux-x64.tar.xz

搞定環境變量

>node -v
v10.14.2
>npm -v
6.4.1

大功告成

歡迎關注公衆號,共同交流,共同進步
歡迎關注公衆號,共同交流,共同進步

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章