Cómo deshabilitar la ejecución paralela en el script bash

Cómo deshabilitar la ejecución paralela en el script bash

Tengo el requisito de hacer un script para recopilar algunos datos de una base de datos y formatearlos de acuerdo con un requisito; esto debería ejecutarse mediante un trabajo cron programado. pero no debería haber carreras paralelas. (Si un proceso se está ejecutando, el otro no debería iniciarse).

Ayúdame a hacer esto en scripts bash.

Respuesta1

Puede utilizar el archivo de bloqueo. Al iniciar el script, verifique si el archivo de bloqueo ya existe; si es así, salga; si no, continúe. Al crear un archivo de bloqueo. ejecuta tu script. Y antes de salir, elimine el archivo de bloqueo. algo como esto:

if [ - f lock ] ; then
exit 1
fi
touch lock
your code
rm lock

información relacionada