满足npm Pro:无限的公共和私人软件包+基于软件包的权限.Learn more »

npx

10.2.1 • Public •发布

npm license Travis AppVeyor Coverage Status

npx(1) -- execute npm package binaries

SYNOPSIS

npx [options] <command>[@version] [command-arg]...

npx [options] [-p|--package <pkg>]... <command> [command-arg]...

npx [options] -c '<command-string>'

npx --shell-auto-fallback [shell]

INSTALL

npm install -g npx

DESCRIPTION

从本地node_modules/.bin或从中央高速缓存执行<command> ,安装运行<command>所需的所有软件包.

默认情况下, npx将检查<command>是否存在于$PATH或本地项目二进制文件中,并执行该命令. 如果未找到<command> ,它将在执行之前安装.

除非--package指定选项, npx会尝试将二进制文件的名称猜调用根据所提供的说明符. npm可以理解的所有软件包说明符都可以与npx一起npx ,包括git说明符,远程tarball,本地目录或作用域软件包.

如果包含完整说明符,或者使用了--package ,则--package将始终使用该软件包的全新安装的临时版本. 也可以使用--ignore-existing标志来强制执行此操作.

  • -p, --package <package> -定义要安装的软件包. 默认为<command>的值. 仅当您要调用其他可执行文件之一,或者二进制名称与软件包名称不匹配时,才需要具有多个二进制文件的软件包. 如果提供此选项, <command>将按原样执行,如果存在@version则不解释. 可能会提供多个--package选项,并且将安装所有指定的软件包.

  • --no-install如果传递给npx ,则它将仅在当前路径或$prefix/node_modules/.bin已经存在的情况下尝试运行<command> . 它不会尝试安装缺少的命令.

  • --cache <path> -设置npm缓存的位置. 默认为npm自己的缓存设置.

  • --userconfig <path> -传递给npm的用户配置文件的路径. 默认为npm当前的默认值.

  • -c <string> -在npm run-script的shell环境中执行<string> ,并提供所有常用的环境变量. 仅<string>的第一项将自动用作<command> . 其他任何人都必须使用-p .

  • --shell <string> -用于调用命令的shell(如果有).

  • --shell-auto-fallback [<shell>] -生成shell代码重写你的shell"命令未找到"处理器与一个呼叫npx . 尝试找出您的外壳,或者您可以将其名称( bashfishzsh )作为选项传递. 请参阅下面的安装方法.

  • --ignore-existing如果设置了此标志,则在决定是否安装之前, node_modules/.bin不会在$PATH或当前包的node_modules/.bin查找现有版本. 这些路径中的二进制文件仍然可以执行,但是此安装请求的任何软件包都将其遮蔽.

  • -q, --quiet -- -q, --quiet禁止来自npx本身的任何输出(进度条,错误消息,安装报告). 子命令输出本身不会被静音.

  • -n, --node-arg --node -n, --node-arg当二进制是节点脚本时,提供给节点的额外节点参数. 您可以多次提供此选项以添加更多参数.

  • -v, --version -- -v, --version显示当前的npx版本.

EXAMPLES

Running a project-local bin

$ npm i -D webpack
$ npx webpack ...

One-off invocation without local installation

$ npm rm webpack
$ npx webpack -- ...
$ cat package.json
...webpack not in "devDependencies"...

Invoking a command from a github repository

$ npx github:piuccio/cowsay
...or...
$ npx git+ssh://my.hosted.git:cowsay.git#semver:^1
...etc...

Execute a full shell command using one npx call w/ multiple packages

$ npx -p lolcatjs -p cowsay -c \
  'echo "$npm_package_name@$npm_package_version" | cowsay | lolcatjs'
...
 _____
< your-cool-package@1.2.3 >
 -----
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

Run node binary with --inspect

$ npx --node-arg=--inspect cowsay
Debugger listening on ws://127.0.0.1:9229/....

Specify a node version to run npm scripts (or anything else!)

npx -p node@8 npm run build

SHELL AUTO FALLBACK

您可以将npx配置为在命令行中使用@键入某些内容时作为默认回退命令运行,但找不到该命令. 这包括安装在本地前缀中也找不到的软件包.

例如:

$ npm@4 --version
(stderr) npm@4 not found. Trying with npx...
4.6.1
$ asdfasdfasf
zsh: command not found: asfdasdfasdf

当前,支持zshbash (> = 4)和fish . 您可以使用npx --shell-auto-fallback <shell>访问这些完成脚本.

要永久安装,请将以下相关行添加到~/.bashrc~/.zshrc~/.config/fish/config.fish或根据需要. 要仅为shell会话安装,只需运行以下代码即可.

您可以选择在生成后备时传递--no-install ,以防止缺少命令时安装后备包.

For bash@>=4:

$ source <(npx --shell-auto-fallback bash)

For zsh:

$ source <(npx --shell-auto-fallback zsh)

For fish:

$ source (npx --shell-auto-fallback fish | psub)

ACKNOWLEDGEMENTS

非常感谢Kwyn Meagher在npm主注册表中慷慨捐赠了软件包名称. 先前npx用于一个Tessel板Neopixels库,它现在可以下找到npx-tessel .

AUTHOR

Kat Marchan撰写.

REPORTING BUGS

在Github上提交任何相关问题.

LICENSE

该作品的作者将其作品发布为CC0-1.0下的公有领域. 有关详细信息,请参见LICENSE.md .

SEE ALSO

  • npm(1)
  • npm-run-script(1)
  • npm-config(7)

Install

npm i npx

DownloadsWeekly Downloads

49,820

Version

10.2.1

License

ISC

Unpacked Size

18.8兆字节

Total Files

4423

Last publish

Collaborators

  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar

by  ICOPY.SITE