Nodejs npx 是什么
Nodejs npx 是什么
最近我在更新 npm 5.2.0 的时候发现会买一送一,自动安装了 npx。
npx 是什么
根据 zkat/npx 的描述,npx 会帮你执行依赖包里的二进制文件。
举例来说,之前我们可能会写这样的命令:
npm i -D webpack
./node_modules/.bin/webpack -v
如果你对 bash 比较熟,可能会写成这样
npm i -D webpack
`npm bin`/webpack -v
有了 npx,你只需要这样
npm i -D webpack
npx webpack -v
也就是说 npx 会自动查找当前依赖包中的可执行文件,如果找不到,就会去 PATH 里找。如果依然找不到,就会帮你安装!
npx 甚至支持运行远程仓库的可执行文件,如
$ npx github:piuccio/cowsay hello
npx: 1 安装成功,用时 1.663 秒
_______
< hello >
-------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
再比如 npx http-server 可以一句话帮你开启一个静态服务器!(第一次运行会稍微慢一些)
$ npx http-server
npx: 23 安装成功,用时 48.633 秒
Starting up http-server, serving ./
Available on:
http://127.0.0.1:8080
http://192.168.5.14:8080
Hit CTRL-C to stop the server
你也试试吧~(并没有什么新东西)
跟知乎上是同一个人?
我推荐大家阅读这篇
[Introducing npx: an npm package runner]( https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b)
#2 看 ID 就知道是了
楼主,我用的时候,一直报:npx: command not found. (我这边 npx 已经全局安装),你知道是怎么回事吗
重装 npm,看下 PATH 环境变量
在Node.js生态系统中,npx
是一个非常重要的工具,它是 npm
(Node Package Manager)的一个包执行器,用于简化在本地运行npm包的操作。npx
提供了无需全局安装npm包就能运行它们的便利,同时它还管理临时安装的包及其依赖,确保环境干净无污染。
基本用法
-
运行npm包: 如果你想运行一个npm包而不想全局安装它,可以使用
npx
。例如,运行create-react-app
来创建一个新的React应用:npx create-react-app my-app
-
执行本地安装的包: 如果你已经在项目中安装了某个npm包,但不想通过
node_modules/.bin
路径来运行它,npx
也可以帮你直接运行。例如,假设你安装了eslint
:npx eslint yourfile.js
-
临时环境:
npx
会创建一个临时的node_modules目录来安装所需的包,执行完毕后会自动清理,确保你的全局环境不会被污染。
代码示例
以下是一个简单的命令行示例,展示如何使用npx
来创建一个新的Express应用:
npx express-generator my-express-app
cd my-express-app
npm install
npm start
在这个例子中,npx
用于临时安装并执行express-generator
,然后你可以进入生成的应用目录并启动它。
总之,npx
是一个强大且便捷的工具,能够极大地提高开发效率和灵活性。