GNU/Linux >> Znalost Linux >  >> Linux

Nespouštějte úlohu cron, pokud již běží

Řešení 1:

Použijte bash skript jako svou úlohu cron

cron.sh

#!/bin/bash
$lockfile=/tmp/lock.file

if [ ! -e $lockfile ]; then
   touch $lockfile
   php /path/to/php/script.php
   rm $lockfile
else
   echo "script already running"
fi

Řešení 2:

Viz Správa procesů. Pravděpodobně budete chtít použít soubor zámku. Můžete použít flock například.

Proč nemůžete nechat své úlohy dokončit?

Vaše otázky říkají "buď jsem odpověď nepochopil, nebo se mě netýkala", ale neuvádíte jakým způsobem. Buďte prosím konkrétnější.


Linux
  1. Spusťte úlohu cron, pouze pokud ještě není spuštěna

  2. Jak nastavit úlohu cron, aby každou hodinu spouštěla ​​spustitelný soubor?

  3. Otestujte týdenní úlohu cronu

  1. Nastavení úlohy Godaddy cron pro spouštění php skriptu

  2. Spuštění úlohy cronu na Linuxu každých šest hodin

  3. Jak spustit úlohu cron každou hodinu a 10 minut

  1. Jak spustit úlohu cron uvnitř kontejneru dockeru

  2. Jak zobrazit aktuálně spuštěnou úlohu cronu?

  3. cron občas neběží