typestar

Ejecutar un comando en JavaScript

execFile con un arreglo de argumentos, promisificado y con await.

import { execFile } from "node:child_process";
import { promisify } from "node:util";

const run = promisify(execFile);

const { stdout } = await run(process.execPath, ["-e", "console.log(21 * 2)"]);
console.log(stdout.trim());

try {
  await run(process.execPath, ["-e", "process.exit(3)"]);
} catch (error) {
  console.log("exit code:", error.code);
}

Cómo funciona

  1. Pasa los argumentos como arreglo: sin shell, sin bugs de comillas.
  2. La promesa se rechaza con salida distinta de cero y trae stderr.
  3. spawn es la alternativa en streaming para salidas grandes.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
13
Caracteres a escribir
349
Tokens
86
Ritmo de tres estrellas
110 tpm

Al ritmo de tres estrellas de 110 tokens por minuto, este intento toma unos 47 segundos.

Escribe este fragmento

Paso 2 de 3 en Crypto y procesos; paso 16 de 18 en Node.js.

← Anterior Siguiente →