Перейти до основного змісту
Версія: 9.x

pnpm exec

Виконує команду оболонки у межах проєкту.

node_modules/.bin is added to the PATH, so pnpm exec allows executing commands of dependencies.

Приклади

If you have Jest as a dependency of your project, there is no need to install Jest globally, just run it with pnpm exec:

pnpm exec jest

The exec part is actually optional when the command is not in conflict with a builtin pnpm command, so you may also just run:

pnpm jest

Параметри

Any options for the exec command should be listed before the exec keyword. Options listed after the exec keyword are passed to the executed command.

Правильно. pnpm буде виконуватися рекурсивно:

pnpm -r exec jest

Bad, pnpm will not run recursively but jest will be executed with the -r option:

pnpm exec jest -r

--recursive, -r

Виконувати команду оболонки в кожному проєкті робочого простору.

The name of the current package is available through the environment variable PNPM_PACKAGE_NAME.

Приклади

Prune node_modules installations for all packages:

pnpm -r exec rm -rf node_modules

Перегляд інформації про всі пакунки. This should be used with the --shell-mode (or -c) option for the environment variable to work.

pnpm -rc exec pnpm view \$PNPM_PACKAGE_NAME

--no-reporter-hide-prefix

Не приховувати префікс при паралельному виконанні команд.

--resume-from <package_name>

Поновити виконання з конкретного проєкту. Це може бути корисним, якщо ви працюєте з великим робочим простором і бажаєте перезапустити збірку з певного проєкту без проходження всіх проєктів які йому передують у процесі збирання.

--parallel

Повністю ігнорувати паралельність і топологічне сортування, запускаючи вказаний скрипт одразу у всіх відповідних пакунках. This is the preferred flag for long-running processes over many packages, for instance, a lengthy build process.

--shell-mode, -c

Runs the command inside of a shell. Uses /bin/sh on UNIX and \cmd.exe on Windows.

--report-summary

Read about this option in the run command docs

--filter <package_selector>

Read more about filtering.