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
View package information for all packages. 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
Do not hide prefix when running commands in parallel.
--resume-from <package_name>
Возобновление выполнения из конкретного проекта. This can be useful if you are working with a large workspace and you want to restart a build at a particular project without running through all of the projects that precede it in the build order.
--parallel
Completely disregard concurrency and topological sorting, running a given script immediately in all matching packages. Это предпочтительный флаг для долго выполняющихся процессов над многими пакетами, например, для длительного процесса сборки.
--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