Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: zamok na program  (Přečteno 1494 krát)

frufru

  • Návštěvník
  • Příspěvků: 6
zamok na program
« kdy: 08 Února 2011, 14:11:14 »
Dobry den,

mal by som otazku - je mozne zabezpecit aby sa program ktory spustam v crone kazdych 5 minut nespustil viackrat(t.j. ak este neskoncilo predchadzajuce spustenie, aby sa opatovne nespustil).
Konkretne sa jedna o stahovanie mailov pomocou getmailu.

Za odpoved dakujem.

Šuohob

  • Závislák
  • ***
  • Příspěvků: 2171
Re: zamok na program
« Odpověď #1 kdy: 08 Února 2011, 14:23:14 »
mohl by se v cronu spoustet skript treba s touto konstrukci:
Kód: [Vybrat]
if [ -z "`ps -ef|grep jmeno_programu|grep -v grep`" ]; then
jmeno_programu;
fi

tohle zajisti ze se jmeno_programu spusti pouze tehdy, pokud uz nebezi
« Poslední změna: 08 Února 2011, 14:25:00 od Bohouš »
Tak dlouho se vrzá s Acerem, až se displej utrhne.

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
Re: zamok na program
« Odpověď #2 kdy: 08 Února 2011, 14:26:29 »
Jde to jednodušeji:
[[ `pidof -x program` ]] || program
« Poslední změna: 12 Února 2011, 17:37:32 od GdH »

starenka

  • Stálý člen
  • **
  • Příspěvků: 1276
  • Karma: plynová [zapalovač] [hasičák]
    • /home/starenka
Re: zamok na program
« Odpověď #3 kdy: 11 Února 2011, 20:49:33 »
Pokud nemuzes pouzit vyse uvedene (napriklad je to skript v nejakym jazyce, kterej se ti bude tezko grepovat - napriklad, kdyz pobezi vicekrat, ale s ruznejma parametrama), tak pouzivam

Kód: [Vybrat]
#!/bin/bash

JOB="lock-"`echo ${0##*/} | cut -d'.' -f1`
if [ -e $JOB ]; then echo "Job already running";exit
else touch $JOB
fi

./neco.py -p
rm $JOB
mojenka | blozinek v2 | starej blozinek | krotim hady za penize | UJ! Kalužátor

Debian testing vrní v Thinkpadu X200/bedně/EEE 900a, MasoX Tiger v lampe

hama4tux

  • Návštěvník
  • Příspěvků: 94
Re: zamok na program
« Odpověď #4 kdy: 14 Února 2011, 11:57:03 »
Co být trochu staromodní a vzít to přez pid?

 

Provoz zaštiťuje spolek OpenAlt.