Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

213
Vistas
Ejecutar el comando de shell de accesos directos de MacOS desde el script de nodo

Estoy tratando de ejecutar accesos directos de MacOS a través del script NodeJS. Para lograrlo, creé accesos directos en la aplicación de accesos directos de MacOS, que normalmente se ejecutan en la terminal (ZSH) al escribir shortcuts run shortcutname ( Docs ). Funcionan bien cuando se escriben directamente en la terminal, pero no cuando se les llama desde un script de NodeJS.

Mi guión se ve así:

 exec('shortcuts run shortcutname', (error, stdout, stderr) => { if (error) { console.log(`error: ${error.message}`); return; } if (stderr) { console.log(`stderr: ${stderr}`); return; } console.log(`stdout: ${stdout}`); });

Al iniciar el script desde el node script.js , no hace nada. No devuelve nada ni termina. Intenté reemplazar los shortcuts run shortcutname por otros comandos que el sistema debería saber. Por ejemplo, ls o git . Todos ellos trabajan. Además, cuando omito el nombre del shortcutname al final, se queja del parámetro faltante.

Sospechaba que faltaban derechos de acceso, pero aparentemente NodeJS se ejecuta como mi usuario normal. Ejecutar whoami en el contexto del script devuelve mi nombre de usuario.

NODE_DEBUG=cluster,net,http,fs,tls,module,timers node script.js no mostró nada inusual. También intenté usar la ruta completa del binario. which shortcuts me dieron /usr/bin/shortcuts . Que usé en mi secuencia de comandos /usr/bin/shortcuts run shortcutname .

¿Qué me estoy perdiendo? ¡Gracias por adelantado!

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Aunque pensé que lo había probado, encontré la solución: execSync en lugar de exec funciona

Sería genial si alguien pudiera explicar por qué el exec no funcionaría.

¡Salud!

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda