我正常使用命令安裝express。node
$ npm install -g express-generator
而後bash就提示安裝成功express
/Users/majialun/.npm-global/bin/express -> /Users/majialun/.npm-global/lib/node_modules/express-generator/bin/express-cli.js + express-generator@4.16.1 updated 1 package in 2.123s
而後運行 express
,按道理這個時候應該讓我建立項目了,可是系統提示:npm
bash: express: command not found
其實不光是express,我本身寫的腳本,也出現這個問題,全局安裝成功,可是,經過bash就是調用不出來。ruby
先看看全局有哪些path變量bash
$ echo $PATH
而後就出現了不少code
/Users/majialun/.rvm/gems/ruby-2.4.1/bin:/Users/majialun/.rvm/gems/ruby-2.4.1@global/bin:/Users/majialun/.rvm/rubies/ruby-2.4.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/majialun/.rvm/gems/ruby-2.4.1/bin:/Users/majialun/.rvm/gems/ruby-2.4.1@global/bin:/Users/majialun/.rvm/rubies/ruby-2.4.1/bin:/Users/majialun/.rvm/bin:/Users/majialun/Documents/flutter/flutter/bin:/Users/majialun/.npm-global/bin/express:/Users/majialun/.rvm/bin:/Users/majialun/Documents/flutter/flutter/bin:/Users/majialun/.rvm/gems/ruby-2.4.1/bin:/Users/majialun/.rvm/gems/ruby-2.4.1@global/bin:/Users/majialun/.rvm/rubies/ruby-2.4.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/majialun/.rvm/gems/ruby-2.4.1/bin:/Users/majialun/.rvm/gems/ruby-2.4.1@global/bin:/Users/majialun/.rvm/rubies/ruby-2.4.1/bin:/Users/majialun/.rvm/bin:/Users/majialun/Documents/flutter/flutter/bin:/Users/majialun/.npm-global/bin/express:/Users/majialun/.rvm/bin:/Users/majialun/.npm-global/bin:/Users/majialun/.rvm/gems/ruby-2.4.1/bin:/Users/majialun/.rvm/gems/ruby-2.4.1@global/bin:/Users/majialun/.rvm/rubies/ruby-2.4.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/majialun/.rvm/gems/ruby-2.4.1/bin:/Users/majialun/.rvm/gems/ruby-2.4.1@global/bin:/Users/majialun/.rvm/rubies/ruby-2.4.1/bin:/Users/majialun/.rvm/bin:/Users/majialun/Documents/flutter/flutter/bin:/Users/majialun/.npm-global/bin/express:/Users/majialun/.rvm/bin:/Users/majialun/Documents/flutter/flutter/bin:/Users/majialun/.rvm/gems/ruby-2.4.1/bin:/Users/majialun/.rvm/gems/ruby-2.4.1@global/bin:/Users/majialun/.rvm/rubies/ruby-2.4.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/majialun/.rvm/gems/ruby-2.4.1/bin:/Users/majialun/.rvm/gems/ruby-2.4.1@global/bin:/Users/majialun/.rvm/rubies/ruby-2.4.1/bin:/Users/majialun/.rvm/bin:/Users/majialun/Documents/flutter/flutter/bin
這個時候咱們發現太多了,可是不要慌,剛纔安裝Express的時候,有一個提示顯示了npm的全局腳本掛在哪一個path下。jade
再看看安裝成功的提示:generator
/Users/majialun/.npm-global/bin/express -> /Users/majialun/.npm-global/lib/node_modules/express-generator/bin/express-cli.js + express-generator@4.16.1 updated 1 package in 2.123s
咱們能夠看到,腳本安裝在/Users/majialun/.npm-global/bin
,這個目錄裏就是所有的全局腳本,注意是bin目錄,express只是這個目錄下的一個而已。it
而後咱們仔細在全局的path裏找,發現並不存在這個路徑……我也不知道我是怎麼把路徑搞沒的,我在公司的Macbook Pro一切正常,可是隨身帶的Macbook就缺失路徑。io
咱們直接去根目錄(/Users/majialun/
)下,顯示隱藏文件後,看看有沒有.bash_profile
,沒有就新建一個,有就直接修改,添加進去一個路徑:
export PATH=$PATH:/Users/majialun/.npm-global/bin:$PATH
注意這個路徑是從上面複製下來的,每一個人的不同,總之從安裝成功的提示裏,複製到/bin這裏結束就能夠了。
好了以後,在終端裏打source
,而後把.bash_profile
拖進來,就有了:
$ source /Users/majialun/.bash_profile
執行一下而後重啓終端,跑起來試試看:
majialun$ express warning: the default view engine will not be jade in future releases warning: use `--view=jade' or `--help' for additional options destination is not empty, continue? [y/N]
沒有not found 的報錯,問題解決。