By default, concurrently doesn't send input to any commands it spawns.
In the below example, typing rs
to manually restart nodemon does nothing:
$ concurrently "nodemon" "npm run watch-js"
rs
To turn on input handling, it's necessary to set the --handle-input
/-i
flag.
This will send rs
to the first command:
$ concurrently --handle-input "nodemon" "npm run watch-js"
rs
To send input to a different command instead, it's possible to prefix the input with the command index, followed by a :
.
For example, the below sends rs
to the second command:
$ concurrently --handle-input "npm run watch-js" "nodemon"
1:rs
If the command has a name, it's also possible to target it using that command's name:
$ concurrently --handle-input --names js,server "npm run watch-js" "nodemon"
server:rs
It's also possible to change the default command that receives input.
To do this, set the --default-input-target
flag to a command's index or name.
$ concurrently --handle-input --default-input-target 1 "npm run watch-js" "nodemon"
rs