[root@localhost linux]# npm install -g express
npm http GET https://registry.npmjs.org/express
npm http 200 https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/express/-/express-4.10.4.tgz
npm http 200 https://registry.npmjs.org/express/-/express-4.10.4.tgz
npm http GET https://registry.npmjs.org/qs/2.3.3
npm http GET https://registry.npmjs.org/debug
npm http GET https://registry.npmjs.org/depd
npm http GET https://registry.npmjs.org/etag
npm http GET https://registry.npmjs.org/cookie-signature/1.0.5
npm http GET https://registry.npmjs.org/escape-html/1.0.1
npm http GET https://registry.npmjs.org/finalhandler/0.3.2
npm http GET https://registry.npmjs.org/fresh/0.2.4
npm http GET https://registry.npmjs.org/media-typer/0.3.0
npm http GET https://registry.npmjs.org/methods/1.1.0
npm http GET https://registry.npmjs.org/on-finished
npm http GET https://registry.npmjs.org/parseurl
npm http GET https://registry.npmjs.org/path-to-regexp/0.1.3
npm http GET https://registry.npmjs.org/proxy-addr
npm http GET https://registry.npmjs.org/range-parser
npm http GET https://registry.npmjs.org/serve-static
npm http GET https://registry.npmjs.org/send/0.10.1
npm http GET https://registry.npmjs.org/type-is
npm http GET https://registry.npmjs.org/vary
npm http GET https://registry.npmjs.org/cookie/0.1.2
npm http GET https://registry.npmjs.org/merge-descriptors/0.0.2
npm http GET https://registry.npmjs.org/utils-merge/1.0.0
npm http GET https://registry.npmjs.org/accepts
npm http GET https://registry.npmjs.org/content-disposition/0.5.0
npm http 200 https://registry.npmjs.org/debug
npm http 200 https://registry.npmjs.org/etag
npm http GET https://registry.npmjs.org/etag/-/etag-1.5.1.tgz
npm http 304 https://registry.npmjs.org/escape-html/1.0.1
npm http 304 https://registry.npmjs.org/finalhandler/0.3.2
npm http 304 https://registry.npmjs.org/fresh/0.2.4
npm http 200 https://registry.npmjs.org/etag/-/etag-1.5.1.tgz
npm http 200 https://registry.npmjs.org/qs/2.3.3
npm http GET https://registry.npmjs.org/qs/-/qs-2.3.3.tgz
npm http 304 https://registry.npmjs.org/cookie-signature/1.0.5
npm http 304 https://registry.npmjs.org/media-typer/0.3.0
npm http 304 https://registry.npmjs.org/methods/1.1.0
npm http 304 https://registry.npmjs.org/on-finished
npm http 200 https://registry.npmjs.org/path-to-regexp/0.1.3
npm http 304 https://registry.npmjs.org/range-parser
npm http GET https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz
npm http 200 https://registry.npmjs.org/depd
npm http 200 https://registry.npmjs.org/qs/-/qs-2.3.3.tgz
npm http 304 https://registry.npmjs.org/parseurl
npm http 200 https://registry.npmjs.org/proxy-addr
npm http GET https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.4.tgz
npm http 304 https://registry.npmjs.org/serve-static
npm http 200 https://registry.npmjs.org/type-is
npm http 200 https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz
npm http 304 https://registry.npmjs.org/vary
npm http 200 https://registry.npmjs.org/cookie/0.1.2
npm http GET https://registry.npmjs.org/type-is/-/type-is-1.5.3.tgz
npm http GET https://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz
npm http 304 https://registry.npmjs.org/utils-merge/1.0.0
npm http 200 https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.4.tgz
npm http 200 https://registry.npmjs.org/accepts
npm http GET https://registry.npmjs.org/accepts/-/accepts-1.1.3.tgz
npm http 200 https://registry.npmjs.org/content-disposition/0.5.0
npm http 200 https://registry.npmjs.org/merge-descriptors/0.0.2
npm http GET https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz
npm http GET https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.2.tgz
npm http 200 https://registry.npmjs.org/send/0.10.1
npm http GET https://registry.npmjs.org/send/-/send-0.10.1.tgz
npm http 200 https://registry.npmjs.org/type-is/-/type-is-1.5.3.tgz
npm http 200 https://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz
npm http 200 https://registry.npmjs.org/send/-/send-0.10.1.tgz
npm http 200 https://registry.npmjs.org/accepts/-/accepts-1.1.3.tgz
npm http 200 https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.2.tgz
npm http 200 https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz
npm http GET https://registry.npmjs.org/crc/3.2.1
npm http GET https://registry.npmjs.org/ipaddr.js/0.1.5
npm http GET https://registry.npmjs.org/forwarded
npm http GET https://registry.npmjs.org/ee-first/1.1.0
npm http GET https://registry.npmjs.org/negotiator/0.4.9
npm http GET https://registry.npmjs.org/mime-types
npm http 200 https://registry.npmjs.org/crc/3.2.1
npm http GET https://registry.npmjs.org/crc/-/crc-3.2.1.tgz
npm http 304 https://registry.npmjs.org/ee-first/1.1.0
npm http GET https://registry.npmjs.org/ms/0.6.2
npm http GET https://registry.npmjs.org/destroy/1.0.3
npm http 304 https://registry.npmjs.org/negotiator/0.4.9
npm http GET https://registry.npmjs.org/mime/1.2.11
npm http 200 https://registry.npmjs.org/mime-types
npm http GET https://registry.npmjs.org/mime-types/-/mime-types-2.0.3.tgz
npm http 304 https://registry.npmjs.org/forwarded
npm http 200 https://registry.npmjs.org/ipaddr.js/0.1.5
npm http GET https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-0.1.5.tgz
npm http 200 https://registry.npmjs.org/crc/-/crc-3.2.1.tgz
npm http 200 https://registry.npmjs.org/ms/0.6.2
npm http GET https://registry.npmjs.org/ms/-/ms-0.6.2.tgz
npm http 304 https://registry.npmjs.org/mime/1.2.11
npm http 200 https://registry.npmjs.org/mime-types/-/mime-types-2.0.3.tgz
npm http 200 https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-0.1.5.tgz
npm http GET https://registry.npmjs.org/mime-db
npm http 304 https://registry.npmjs.org/destroy/1.0.3
npm http 200 https://registry.npmjs.org/mime-db
npm http GET https://registry.npmjs.org/mime-db/-/mime-db-1.2.0.tgz
npm http 200 https://registry.npmjs.org/mime-db/-/mime-db-1.2.0.tgz
npm http 200 https://registry.npmjs.org/ms/-/ms-0.6.2.tgz
npm WARN unmet dependency /usr/lib/node_modules/block-stream requires inherits@'~2.0.0' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/fstream requires inherits@'~2.0.0' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/fstream-ignore requires inherits@'2' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/fstream-npm requires inherits@'2' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/glob requires inherits@'2' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/npmconf requires inherits@'~2.0.0' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/tar requires inherits@'2' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
express@4.10.4 /usr/lib/node_modules/express
├── merge-descriptors@0.0.2
├── fresh@0.2.4
├── cookie@0.1.2
├── escape-html@1.0.1
├── range-parser@1.0.2
├── utils-merge@1.0.0
├── cookie-signature@1.0.5
├── finalhandler@0.3.2
├── vary@1.0.0
├── media-typer@0.3.0
├── methods@1.1.0
├── parseurl@1.3.0
├── serve-static@1.7.1
├── content-disposition@0.5.0
├── path-to-regexp@0.1.3
├── depd@1.0.0
├── qs@2.3.3
├── on-finished@2.1.1 (ee-first@1.1.0)
├── etag@1.5.1 (crc@3.2.1)
├── proxy-addr@1.0.4 (forwarded@0.1.0, ipaddr.js@0.1.5)
├── accepts@1.1.3 (negotiator@0.4.9, mime-types@2.0.3)
├── type-is@1.5.3 (mime-types@2.0.3)
├── send@0.10.1 (ms@0.6.2, destroy@1.0.3, mime@1.2.11)
└── debug@2.1.0 (ms@0.6.2)
[root@localhost linux]# express --version
bash: express: command not found
[root@localhost linux]# npm install -g express
npm http GET https://registry.npmjs.org/express
npm http 200 https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/express/-/express-4.10.4.tgz
npm http 200 https://registry.npmjs.org/express/-/express-4.10.4.tgz
npm http GET https://registry.npmjs.org/qs/2.3.3
npm http GET https://registry.npmjs.org/debug
npm http GET https://registry.npmjs.org/depd
npm http GET https://registry.npmjs.org/etag
npm http GET https://registry.npmjs.org/cookie-signature/1.0.5
npm http GET https://registry.npmjs.org/escape-html/1.0.1
npm http GET https://registry.npmjs.org/finalhandler/0.3.2
npm http GET https://registry.npmjs.org/fresh/0.2.4
npm http GET https://registry.npmjs.org/media-typer/0.3.0
npm http GET https://registry.npmjs.org/methods/1.1.0
npm http GET https://registry.npmjs.org/on-finished
npm http GET https://registry.npmjs.org/parseurl
npm http GET https://registry.npmjs.org/path-to-regexp/0.1.3
npm http GET https://registry.npmjs.org/proxy-addr
npm http GET https://registry.npmjs.org/range-parser
npm http GET https://registry.npmjs.org/serve-static
npm http GET https://registry.npmjs.org/send/0.10.1
npm http GET https://registry.npmjs.org/type-is
npm http GET https://registry.npmjs.org/vary
npm http GET https://registry.npmjs.org/cookie/0.1.2
npm http GET https://registry.npmjs.org/merge-descriptors/0.0.2
npm http GET https://registry.npmjs.org/utils-merge/1.0.0
npm http GET https://registry.npmjs.org/accepts
npm http GET https://registry.npmjs.org/content-disposition/0.5.0
npm http 200 https://registry.npmjs.org/debug
npm http 200 https://registry.npmjs.org/etag
npm http GET https://registry.npmjs.org/etag/-/etag-1.5.1.tgz
npm http 304 https://registry.npmjs.org/escape-html/1.0.1
npm http 304 https://registry.npmjs.org/finalhandler/0.3.2
npm http 304 https://registry.npmjs.org/fresh/0.2.4
npm http 200 https://registry.npmjs.org/etag/-/etag-1.5.1.tgz
npm http 200 https://registry.npmjs.org/qs/2.3.3
npm http GET https://registry.npmjs.org/qs/-/qs-2.3.3.tgz
npm http 304 https://registry.npmjs.org/cookie-signature/1.0.5
npm http 304 https://registry.npmjs.org/media-typer/0.3.0
npm http 304 https://registry.npmjs.org/methods/1.1.0
npm http 304 https://registry.npmjs.org/on-finished
npm http 200 https://registry.npmjs.org/path-to-regexp/0.1.3
npm http 304 https://registry.npmjs.org/range-parser
npm http GET https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz
npm http 200 https://registry.npmjs.org/depd
npm http 200 https://registry.npmjs.org/qs/-/qs-2.3.3.tgz
npm http 304 https://registry.npmjs.org/parseurl
npm http 200 https://registry.npmjs.org/proxy-addr
npm http GET https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.4.tgz
npm http 304 https://registry.npmjs.org/serve-static
npm http 200 https://registry.npmjs.org/type-is
npm http 200 https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz
npm http 304 https://registry.npmjs.org/vary
npm http 200 https://registry.npmjs.org/cookie/0.1.2
npm http GET https://registry.npmjs.org/type-is/-/type-is-1.5.3.tgz
npm http GET https://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz
npm http 304 https://registry.npmjs.org/utils-merge/1.0.0
npm http 200 https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.4.tgz
npm http 200 https://registry.npmjs.org/accepts
npm http GET https://registry.npmjs.org/accepts/-/accepts-1.1.3.tgz
npm http 200 https://registry.npmjs.org/content-disposition/0.5.0
npm http 200 https://registry.npmjs.org/merge-descriptors/0.0.2
npm http GET https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz
npm http GET https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.2.tgz
npm http 200 https://registry.npmjs.org/send/0.10.1
npm http GET https://registry.npmjs.org/send/-/send-0.10.1.tgz
npm http 200 https://registry.npmjs.org/type-is/-/type-is-1.5.3.tgz
npm http 200 https://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz
npm http 200 https://registry.npmjs.org/send/-/send-0.10.1.tgz
npm http 200 https://registry.npmjs.org/accepts/-/accepts-1.1.3.tgz
npm http 200 https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.2.tgz
npm http 200 https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz
npm http GET https://registry.npmjs.org/crc/3.2.1
npm http GET https://registry.npmjs.org/ipaddr.js/0.1.5
npm http GET https://registry.npmjs.org/forwarded
npm http GET https://registry.npmjs.org/ee-first/1.1.0
npm http GET https://registry.npmjs.org/negotiator/0.4.9
npm http GET https://registry.npmjs.org/mime-types
npm http 200 https://registry.npmjs.org/crc/3.2.1
npm http GET https://registry.npmjs.org/crc/-/crc-3.2.1.tgz
npm http 304 https://registry.npmjs.org/ee-first/1.1.0
npm http GET https://registry.npmjs.org/ms/0.6.2
npm http GET https://registry.npmjs.org/destroy/1.0.3
npm http 304 https://registry.npmjs.org/negotiator/0.4.9
npm http GET https://registry.npmjs.org/mime/1.2.11
npm http 200 https://registry.npmjs.org/mime-types
npm http GET https://registry.npmjs.org/mime-types/-/mime-types-2.0.3.tgz
npm http 304 https://registry.npmjs.org/forwarded
npm http 200 https://registry.npmjs.org/ipaddr.js/0.1.5
npm http GET https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-0.1.5.tgz
npm http 200 https://registry.npmjs.org/crc/-/crc-3.2.1.tgz
npm http 200 https://registry.npmjs.org/ms/0.6.2
npm http GET https://registry.npmjs.org/ms/-/ms-0.6.2.tgz
npm http 304 https://registry.npmjs.org/mime/1.2.11
npm http 200 https://registry.npmjs.org/mime-types/-/mime-types-2.0.3.tgz
npm http 200 https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-0.1.5.tgz
npm http GET https://registry.npmjs.org/mime-db
npm http 304 https://registry.npmjs.org/destroy/1.0.3
npm http 200 https://registry.npmjs.org/mime-db
npm http GET https://registry.npmjs.org/mime-db/-/mime-db-1.2.0.tgz
npm http 200 https://registry.npmjs.org/mime-db/-/mime-db-1.2.0.tgz
npm http 200 https://registry.npmjs.org/ms/-/ms-0.6.2.tgz
npm WARN unmet dependency /usr/lib/node_modules/block-stream requires inherits@'~2.0.0' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/fstream requires inherits@'~2.0.0' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/fstream-ignore requires inherits@'2' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/fstream-npm requires inherits@'2' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/glob requires inherits@'2' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/npmconf requires inherits@'~2.0.0' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
npm WARN unmet dependency /usr/lib/node_modules/tar requires inherits@'2' but will load
npm WARN unmet dependency undefined,
npm WARN unmet dependency which is version undefined
express@4.10.4 /usr/lib/node_modules/express
├── merge-descriptors@0.0.2
├── fresh@0.2.4
├── cookie@0.1.2
├── escape-html@1.0.1
├── range-parser@1.0.2
├── utils-merge@1.0.0
├── cookie-signature@1.0.5
├── finalhandler@0.3.2
├── vary@1.0.0
├── media-typer@0.3.0
├── methods@1.1.0
├── parseurl@1.3.0
├── serve-static@1.7.1
├── content-disposition@0.5.0
├── path-to-regexp@0.1.3
├── depd@1.0.0
├── qs@2.3.3
├── on-finished@2.1.1 (ee-first@1.1.0)
├── etag@1.5.1 (crc@3.2.1)
├── proxy-addr@1.0.4 (forwarded@0.1.0, ipaddr.js@0.1.5)
├── accepts@1.1.3 (negotiator@0.4.9, mime-types@2.0.3)
├── type-is@1.5.3 (mime-types@2.0.3)
├── send@0.10.1 (ms@0.6.2, destroy@1.0.3, mime@1.2.11)
└── debug@2.1.0 (ms@0.6.2)
[root@localhost linux]# express --version
bash: express: command not found