title | description |
---|---|
exec - CLI command |
Executes any command as if it was a target on the project |
- Executes any command as if it was a target on the project
- Executes an arbitrary command in each package
In package.json, adding a script with nx exec
will run the command as if it is a target that project:
{
"name": "myorg",
"version": "0.0.1",
"scripts": {
"build": "nx exec -- <command> [..args]"
}
}
It will run the command for myorg
.
When run from the terminal, nx exec
will run the command for all projects in the workspace:
nx exec -- <command> [..args] # runs the command in all projects
nx exec -- tsc
nx exec -- echo \$NX_PROJECT_NAME
nx exec -- echo \$NX_PROJECT_ROOT_PATH
Install nx
globally to invoke the command directly using nx
, or use npx nx
, yarn nx
, or pnpm nx
.
You can use npm run <command>
for a project and leverage the caching by wrap your command with nx exec
.
For example, you can run npm run docs
as a Nx target for myorg
:
{
"name": "myorg",
"nx": {},
"scripts": {
"docs": "nx exec -- node ./scripts/some-script.js"
}
}
You may also run a script located in the project directory for all projects:
nx exec -- node ./scripts/some-script.js
The name of the current project is available through the environment variable $NX_PROJECT_NAME:
nx exec -- echo \$NX_PROJECT_NAME
The location of current project is available through the environment variable $NX_PROJECT_ROOT_PATH:
nx exec -- echo \$NX_PROJECT_ROOT_PATH
Type: boolean
Default: true
[deprecated] run-many
runs all targets on all projects in the workspace if no projects are provided. This option is no longer required.
Type: string
Exclude certain projects from being processed
Type: string
Show the task graph of the command. Pass a file path to save the graph data instead of viewing it in the browser.
Type: boolean
Show help
Type: boolean
Default: false
Stop command execution after the first failed task
Type: boolean
Default: false
Ignore cycles in the task graph
Type: string
Max number of parallel processes [default is 3]
Type: string
Projects to run. (comma/space delimited project names and/or patterns)
Type: string
This is the name of the tasks runner configured in nx.json
Type: boolean
Default: false
Rerun the tasks even when the results are available in the cache
Type: boolean
Prints additional information about the commands (e.g., stack traces)
Type: boolean
Show version number