Autor Téma: utilita na spuštění programu na určenou dobu  (Přečteno 2238 krát)

Offline Hobild

  • Uživatel
  • ***
  • Příspěvků: 233
    • Zobrazit profil
  • Jabber: hobil@jabber.root.cz
utilita na spuštění programu na určenou dobu
« kdy: 27. 05. 2011, 13:36:19 »
Ahojte,
neznáte někdo nějakou nástroj/skript, která by mi umožnil spustit program v zadaný čas a po uplynutí určené doby ho zase killnout? Dik.

Offline jeanne

  • Nováček
  • *
  • Příspěvků: 6
    • Zobrazit profil
Re:utilita na spuštění programu na určenou dobu
« Odpověď #1 kdy: 27. 05. 2011, 15:18:40 »
cron  :)

Offline Hobild

  • Uživatel
  • ***
  • Příspěvků: 233
    • Zobrazit profil
  • Jabber: hobil@jabber.root.cz
Re:utilita na spuštění programu na určenou dobu
« Odpověď #2 kdy: 27. 05. 2011, 16:59:27 »
neni problem spusteni, ale potreboval bych, aby si user mohl spustit program v jim zadanou dobu na jim zadanou dobu. Na spusteni se nabizi spis at nez cron, ale nasledne je zapotrebi zjistit pid a v urcenou dobu ho killnout. Podotykam, ze stejny program muze bezet ve vice instancich, takze vyuziti killall neprichazi do uvahy. No, pokud nic neni, asi to musim naskriptovat sam.
H.

Offline phebix

  • Nováček
  • *
  • Příspěvků: 6
    • Zobrazit profil
  • Jabber: phebix@jabber.cz
Re:utilita na spuštění programu na určenou dobu
« Odpověď #3 kdy: 05. 06. 2011, 01:11:19 »
co treba neco jako toto:
Kód: [Vybrat]
#!/bin/bash
gedit &   # spustime pozadovany program na pozadi
pid=$!   # zapamatujem si PID procesu ktery sme naposledy spustili na pozadi
sleep 10   # pockame pozadovany cas
kill $pid   # ukoncime

jen to pak spustit cronem v dany cas  ;)

Offline Hobild

  • Uživatel
  • ***
  • Příspěvků: 233
    • Zobrazit profil
  • Jabber: hobil@jabber.root.cz
Re:utilita na spuštění programu na určenou dobu
« Odpověď #4 kdy: 05. 06. 2011, 02:51:47 »
dik, hledal jsem pro urychleni casu neco hotoveho, takze jsem si to uz nejak zbastlil:
Kód: [Vybrat]
#!/bin/bash

if [ $# != 3 ]; then

echo " spust znovu a zadej: kanál CT (1,2 nebo 24), začátek programu a konec programu v HHMM"
exit 1
fi
case "$1" in
1)
echo "wine ~/bin/ytd/ytd.exe -r -o /home/moje/Dokumenty/multimedia/video/wdh http://www.ceskatelevize.cz/ct1/zive/ & sleep 2 && ps -C ytd.exe -o pid >./pid.txt" | at $2
;;
2)
echo "wine ~/bin/ytd/ytd.exe -r -o /home/moje/Dokumenty/multimedia/video/wdh http://www.ceskatelevize.cz/ct2/zive/ & sleep 2 && ps -C ytd.exe -o pid >./pid.txt" | at $2
;;
24)
echo "wine ~/bin/ytd/ytd.exe -r -o /home/moje/Dokumenty/multimedia/video/wdh http://www.ct24.cz/vysilani/ & sleep 2 && ps -C ytd.exe -o pid >./pid.txt" | at $2
;;
esac

echo "~/bin/vypni_nahravaniCT.sh" | at $3
a v tom je:
Kód: [Vybrat]
#!/bin/bash
kill `tail -1 ~/bin/pid.txt`
Na vic nebyl cas. Nasledne jsem zjistil, ze u CT1 a 2 neni potreba vypinani - stream se automaticky prerusuje po odvysilani poradu. CT24 jsem v tomhle ohledu jeste nevyzkousel.
H.