Comprobar si un script en bash ya se está ejecutando
Algo realmente útil para cuando necesitamos que sólo haya una ejecución del mismo script (por ejemplo, para copias de seguridad automáticas ejecutadas desde cron).
Lógicamente, se incluye al principio del script.
if pidof -x $(basename $0) > /dev/null; then
for p in $(pidof -x $(basename $0)); do
if [ $p -ne $ ]; then
echo "El script $0 ya se está ejecutando. Saliendo..."
exit
fi
done
fi