Creé una CLI simple usando inquirer y child_process. Y tengo un problema, cuando estoy cerrando el proceso con CTLR+C, parece que todavía está en ejecución, porque la terminal no responde nada. Y tengo que cerrar la terminal cada vez y volver a abrirla, me resulta incómodo. ¿Qué debo hacer para salir de todos los procesos con el simple comando CTRL+C? Busqué tantas soluciones en Google, pero ningún resultado. Espero que alguien pueda ayudarme con eso.
const inquirer = require('inquirer') const { execSync } = require('child_process') const { readdirSync } = require('fs') const targetFolder = './src/pages' const directories = readdirSync(targetFolder) const questions = [ { type: 'list', name: 'page', message: 'Choose page to compile', choices: directories, }, ] inquirer.prompt(questions).then(({ page }) => { const options = { stdio: 'inherit', } execSync(`npm run start -- --env page=${page}`, options) })Si usa funciones async o promesas, debe finalizar el programa con process.exit() . Agréguelo después de execSync en la llamada then .