GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo ejecutar `fecha` dentro de un trabajo de pestaña cron?

Quiero crear un archivo de registro para un script cron que tenga la hora actual en el nombre del archivo de registro. Este es el comando que traté de usar:

0 * * * * echo hello >> ~/cron-logs/hourly/test`date "+%d"`.log

Desafortunadamente recibo este mensaje cuando se ejecuta:

/bin/sh: -c: line 0: unexpected EOF while looking for matching ``'
/bin/sh: -c: line 1: syntax error: unexpected end of file

He intentado escapar de la date parte de varias maneras, pero sin mucha suerte. ¿Es posible hacer que esto suceda en línea en un archivo crontab o necesito crear un script de shell para hacer esto?

Respuesta aceptada:

Respuesta corta:

Escapar del % como % :

0 * * * * echo hello >> ~/cron-logs/hourly/test`date "+%d"`.log

Respuesta larga:

El mensaje de error sugiere que el shell que ejecuta su comando no ve el segundo carácter de marca de retroceso:

/bin/sh: -c: line 0: unexpected EOF while looking for matching '`'

Esto también se confirma con el segundo mensaje de error que recibió cuando probó una de las otras respuestas:

/bin/sh: -c: line 0: unexpected EOF while looking for matching ')'

La página de manual de crontab confirma que el comando es de solo lectura hasta el primer % sin escape firmar:

El campo "sexto" (el resto de la línea) especifica el comando a
ejecutar. La parte de comando completa de la línea, hasta una nueva línea o % carácter, será ejecutado por /bin/sh o por el shell especificado en
el SHELL variable del archivo cron. Signos de porcentaje (% ) en el comando, a menos que se escape con una barra invertida ( ), se transformará en caracteres de nueva línea y todos los datos después del primer % se enviará a
el comando como entrada estándar.


Linux
  1. Cómo configurar un trabajo cron en TrueNAS

  2. ¿Cómo indicar a cron que ejecute un trabajo cada dos semanas?

  3. ¿Cómo puedo crear mediante programación un nuevo trabajo cron?

  4. Cómo ejecutar un trabajo cron dentro de un contenedor docker

  5. ¿Cómo ver un trabajo cron que se está ejecutando actualmente?

Cómo configurar un trabajo cron en cPanel

Cómo configurar un trabajo cron en cPanel

Cómo configurar un trabajo cron en cPanel

¿Cómo configurar un Cron Job en Hostinger?

Cómo usar el comando Jobs en Linux

¿Cómo ejecutar un comando en un script de Shell?