Necesita ayuda para solucionar un script de shell que no se inicia (sí, los permisos son 755)

1

Podría ser el retraso de la hora, pero no puedo entender por qué el siguiente script no funciona. Es directamente de la documentación de CommuniGate Pro enlace , pero cuando intento ejecutarlo manualmente, los comandos de eco no hacen eco. , y el correo electrónico nunca se envía.

Proceso de instalación: copia de la página web, nombre de archivo sudo pico, pegar, guardar, chmod 755.

Todo funciona bien cuando ejecuto los comandos que llama directamente; el problema es que quiero que estos sean lanzados regularmente por launchd, y los comandos solo funcionan si se ejecutan como ./commandname desde ese directorio base - no tengo idea de cómo hacerlo en launchd y Apple docs no ayuda . (La pregunta se considerará respondida si alguien me dice cómo hacerlo). [Editar: encontró la clave de WorkingDirectory en "man launchd.plist", pero la ayuda en el script de shell aún sería ingeniosa.]

El guión:

#!/bin/sh
SOPHOS_PATH="/var/CommuniGate/CGPSophos"
MAILER_CMD="/usr/bin/mail -s 'Sophos Update Report'"
REPORT_ADR="postmaster"
( \
if [ "$1" = -m ]; then
 echo "Launching Sophos monthly update..."
 cd ${SOPHOS_PATH}
 ./monthlyUpdate 2>&1
 ./engineUpdate 2>&1
fi
echo "Launching Sophos daily update..."
  cd ${SOPHOS_PATH}
  ./dailyUpdate 2>&1
) | eval ${MAILER_CMD} ${REPORT_ADR}
    
pregunta Jeff Porten 02.01.2018 - 11:04

0 respuestas

Lea otras preguntas en las etiquetas