GNU/Linux >> Znalost Linux >  >> Linux

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

Pokud vás jen zajímá, zda váš cronjob právě běží a kdy naposledy začal, pak najdu následující nejjednodušší způsob:

0 0 * * * touch /path/cron.start;  /path/exec.sh; touch /path/cron.end

Tím se vytvoří soubor /path/cron.start s časovým razítkem, což je čas zahájení. Po dokončení úlohy se zobrazí soubor /path/cron.end bude mít časové razítko, když cron skončí. Takže jednoduchý ls -lrt /path/cron.{start,end} vám sdělí, kdy úloha začala a zda stále běží (příkaz vám řekne, zda stále běží).


zkontrolovat, zda cron v tuto chvíli skutečně něco spouští (funguje na ubuntu)

pstree -apl `pidof cron`

a buď dostanete

2775,cron # your pid (2775) will be different to mine :-)

nebo stromový výstup se všemi podřízenými procesy, které cron běží (nemusí je pojmenovat, pokud nemáte dostatečná oprávnění) a jak říká Hamoriz, protokoly jsou v /var/log/syslog tak

grep CRON /var/log/syslog

získáte protokoly jen pro cron


Také bych rád viděl, jestli zrovna běží některá z mých úloh cron ?

ps aux |grep "path/exec.sh"

v kolik hodin běžela moje úloha cron?

Protokol cronu se zobrazí pouze při spuštění úlohy mimo crond, nikoli protokol při ukončení. Musíte to dát na svůj úkol nebo vložit svůj úkol do jednoho skriptu s kontrolním časem začátku a konce.

pokud již byla spuštěna?

cat /path/logs/messages nebo /path/logs/file, když váš systém vložil protokoly crond (to závisí na vašem nastavení distribuce nebo vašem počítači)


Linux
  1. Jak nastavit úlohy cron v cPanel

  2. Jak spustit úlohu cron uvnitř kontejneru dockeru

  3. jak spustit cron job každé 3 měsíce?

  1. Jak nastavit úlohu Cron v TrueNAS

  2. Jak nastavit úlohu Cron

  3. Jak mohu programově vytvořit novou úlohu cron?

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

  2. Jak cron interně plánuje úlohy?

  3. Jak zkontrolovat, zda je aktuálně spuštěný shell BusyBox