我有一个类似于下面的 start.bat
:
start npx tailwindcss -i ./www/src/styles/main.css -o ./www/dist/styles/main.css --watch
start caddy run
它启动 2 个新的 cmd 提示并启动其中的进程(它们都无限期地运行)。这个 bat 文件有没有办法向它生成的 cmd 发送 kill 命令?理想情况下,我有一个命令可以杀死所有创建的“子”进程。
最佳答案
PowerShell 解决方案 - 这是可以接受的,因为这个问题的标记暗示和 icanfathom(OP)在评论(“不,PS 会很好”)- 使用 Start-Process
和 Stop-Process
命令:
$processes = & {
Start-Process -PassThru npx 'tailwindcss -i ./www/src/styles/main.css -o ./www/dist/styles/main.css --watch'
Start-Process -PassThru caddy run
}
# ...
# Stop (kill) all launched processes.
$processes | Stop-Process
关于windows - 在新终端中运行命令,稍后终止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71533137/