Tengo un script que se ejecuta a la perfección bajo normal shell interactivo, pero que con frecuencia tiene errores cuando se ejecuta como un usuario LaunchAgent.
Hay una manera manualmente, e idealmente de forma interactiva, ejecutar un comando exactamente como se ejecuta por launchd, para facilitar la depuración?
Para ser claros, la secuencia de comandos en la pregunta que hace el trabajo (de forma intermitente) bajo launchd. No es tan simple como la falta de caminos. Sé que launchd utiliza una spartan medio ambiente, pero la situación ahora es:
- No son frecuentes los fallos intermitentes en virtud de launchd
- Nunca he reproducido estos fracasos en mi shell de usuario
Como es común, existen numerosas diferencias en el entorno de entre mis completamente configurada de shell de usuario y la mínima launchd contexto, por lo que es muy difícil adivinar lo que la diferencia podría ser la culpa (o si incluso es una variable de entorno que hace la diferencia), que es la razón por la que yo estaba esperando encontrar una manera simple para ejecutar comandos de forma manual y de forma interactiva, exactamente como es que se ejecuta bajo launchd. Estoy sorprendido de que no hay un launchd run
subcomando o similar.