Uso de variables de entorno para realizar un seguimiento de los procesos iniciados por cron

Uso de variables de entorno para realizar un seguimiento de los procesos iniciados por cron

Mi pregunta:

Tengo una declaración if en Perl donde intento detectar a través de variables de entorno en el momento de iniciar el script Perl si se inició mediante un trabajo cron o mediante una ejecución normal a través del Shell.

¿Hay alguna forma de establecer una variable de entorno en el crontab a la que pueda acceder un programa iniciado por cron?

Básicamente, quiero esto en la parte superior de mi crontab:

COMPANYCRON=1

* * * * * someperl.pl

Y en someperl.pl esta declaración if:

if ( $ENV{'COMPANYCRON'} eq '1' ) {
    $job_creator = "cron";
}

¿Hay alguna forma de hacer esto? ¿O un mejor enfoque para realizar un seguimiento de los trabajos cron?

Respuesta1

Algunos demonios cron (por ejemplo, Vixie cron en Debian/Ubuntu) permiten exactamente la misma sintaxis que escribiste en tu ejemplo. En otros sistemas (RHEL, etc.), use algo como esto en su crontab:

* * * * * export COMPANYCRON=1; someperl.pl 

información relacionada