Saltar al contenido principal
Version: 6.x

pnpm exec

Ejecuta un comando de shell en el ámbito de un proyecto.

La carpeta node_modules/.bin se agrega al PATH, por lo que pnpm exec permite ejecutar comandos que exponen ciertas dependencias.

Examples

Si tienes Jest como dependencia de tu proyecto, no es necesario instalar Jest globalmente, simplemente ejecútalo con pnpm exec:

pnpm exec jest

El argumento exec es opcional cuando el comando a ejecutar no está en conflicto con un comando incorporado de pnpm, así que también puedes ejecutar:

pnpm jest

Options

Cualquier opción para el comando exec debe aparecer antes de la palabra exec. Las opciones listadas después de la palabra exec se pasan al comando ejecutado.

Bien. pnpm se ejecutará recursivamente:

pnpm -r exec jest

Mal, pnpm no se ejecutará recursivamente pero jest se ejecutará con la opción -r:

pnpm exec jest -r

--recursive, -r

Added in: v2.9.0

Ejecuta un comando de shell en cada proyecto del workspace.

The name of the current package is available through the environment variable PNPM_PACKAGE_NAME (supported from pnpm v2.22.0 onwards).

Examples

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

--parallel

Added in: v5.1.0

Completely disregard concurrency and topological sorting, running a given script immediately in all matching packages with prefixed streaming output. This is the preferred flag for long-running processes over many packages, for instance, a lengthy build process.

--shell-mode, -c

Added in: v6.31.0

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

--filter <package_selector>

Read more about filtering.