2014-06-28 43 views
0

我已經快速安裝,但它不再有效。當我輸入端「表示:」我得到:無法在Ubuntu 13.x中快速卸載

bash: /usr/local/bin/express: No such file or directory 

如果我嘗試卸載我得到...

sudo npm uninstall –g express 
npm WARN uninstall not installed in /home/user/expressApps/sausage/node_modules: "–g" 
npm WARN uninstall not installed in /home/user/expressApps/sausage/node_modules: "express" 

或者,如果我嘗試重新安裝我得到...

sudo npm install –g express 
npm WARN package.json [email protected] No README.md file found! 
npm http GET https://registry.npmjs.org/express/3.12.1 
npm http GET https://registry.npmjs.org/%E2%80%93g 
npm http 404 https://registry.npmjs.org/%E2%80%93g 
npm ERR! 404 '%E2%80%93g' is not in the npm registry. 
npm ERR! 404 You should bug the author to publish it 
npm ERR! 404 
npm ERR! 404 Note that you can also install from a 
npm ERR! 404 tarball, folder, or http url, or git url. 

npm ERR! System Linux 3.11.0-24-generic 
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install" "–g" "express" 
npm ERR! cwd /home/johnmlocklear/expressApps/sausage 
npm ERR! node -v v0.10.15 
npm ERR! npm -v 1.2.18 
npm ERR! code E404 
npm http 304 https://registry.npmjs.org/express/3.12.1 
npm ERR! 
npm ERR! Additional logging details can be found in: 
npm ERR!  /home/johnmlocklear/expressApps/sausage/npm-debug.log 
npm ERR! not ok code 0 

我該如何再次快速工作?

回答

1

所以我覺得我的問題是,我一直在使用

sudo apt-get install express 

然後後,在某些時候我也已經從NPM安裝安裝快車從apt-get的回購。爲了清理所有這些,我跑了

sudo apt-get uninstall express 

...我也進入了〜/ .npm並刪除了express和express-genrator文件夾。然後我跑了兩個...

sudo npm install -g express 
sudo npm install -g express-generator 

...和所有似乎現在工作正常。

+0

很高興這個清理!但是'sudo nom uninstall -g express'問題我的答案發現了嗎?這絕對是您的命令中編碼爲「en-dash」的網址。 – JakeGould

+1

這解決了我的問題,謝謝,加上一個雖然。 但還有一件事,我使用npm安裝了npm ..它的weired,但這是我可以正確安裝npm'sudo npm install npm'的唯一方法 – Yahya

1

大線索,我都在這些錯誤行:

npm http GET https://registry.npmjs.org/%E2%80%93g 
npm http 404 https://registry.npmjs.org/%E2%80%93g 
npm ERR! 404 '%E2%80%93g' is not in the npm registry. 

%E2%80%93g(注意g末)太瘋狂了。它西爾斯直接連接到該行:

sudo npm install –g express 

旁邊g不是一個簡單的衝刺,但已被URL編碼某些UTF-8字符。很確定that is an en-dash,因爲URL編碼%E2%80%93等於e28093在十六進制as shown here。最有可能來自一個副本&粘貼出一個文本編輯器,以某種方式自動設置簡單的破折號爲虛線。當存儲代碼&作弊加熱時,請小心這樣的東西。

爲了解決這個問題,一個真正的破折號-像這樣運行命令:

sudo npm install -g express 

的其他問題,我看到的是這樣的:

慶典:在/ usr/local/bin目錄/快遞:沒有這樣的文件或目錄

那麼/usr/local/bin/express從哪裏來?如果express不在你的路徑,那麼你甚至不會得到這樣的全路徑消息?這是您的個人資料中的bash別名嗎?如果你自己設置,我強烈建議只需將/usr/local/bin/添加到shell路徑而不是設置別名。