Python týden Geek tričko zdarma
Tričko zdarma! Stačí před dobitím bodů použít kód TRIKO15. Více informací zde
Pouze tento sleva až 80% na kurzy Python

Diskuze: Jak spustit Bash přes cron

Aktivity (1)
Avatar
nemec.radovan:7.12.2018 4:42

Ahoj všem, mám otázku, jak udělám samostatný skript s cron tak aby šel spustit bez vypisování příkazu v určitém datu.

Cron by mě měl byt obsažen ve skriptu Bash

Zkusil jsem: Hledal jsem plno příkladu na internetu, ale stále mi test nechce spustit

Chci docílit: Aby šel spouštět bez zásahu uživatele (tedy zadáním všech parametrů z příkazového řádku při spuštění), předem všem děkuji za rady.

Editováno 7.12.2018 4:45
 
Odpovědět 7.12.2018 4:42
Avatar
Otík Rampouch:5. března 17:22

Ahoj,

bash scripty se normálně v cronu dají spouštět stejně jako cokoliv jiného spustitelného s příslušnými právy.

Pokud máš skript, který vyžaduje interakci s uživatelem, nejjednodušší je mu přesměrovat standardní vstup na soubor. To se udělá tak, že vytvoříš textový soubor, který přesně obsahuje text, ke kterému skript uživatele vyzve a pak jej pustíš např. takto:

./mujskript.sh < vstup.txt
Editováno 5. března 17:22
 
Nahoru Odpovědět 5. března 17:22
Avatar
mixxy
Člen
Avatar
mixxy:6. března 11:21

Ahoj,
cron je pomerne jednoduchy nastroj, obecne mas moznost vyuziti 5ti "casovacu", ktere ti budou spoustet skript podle pozadavku.
Pokud mas OS bez GUI, muzes se dostat do cronu pomoci : crontab -e
Pro zadani noveho zaznamu si pak vytvoris planovani a pridas skript, ktery se ma spustit.
Napr. pro spusteni kazdych 5 minut muzes pouzit:
0,5,10,15,20,­25,30,35,40,45,50,55 * * * * /cesta k tvemu skriptu/skript.ksh > /dev/null
a nebo taky muzes pouzit zjednodusenou notaci:
*/5 * * * * /cesta k tvemu skriptu/skript.ksh > /dev/null

Je takovy standard, ze se vystup loguje do nejakeho log filu treba pro monitorovani, jestli byla akce uspesna, nebo nee,ale pokud te log nezajima, muzes vystup presmerovat na /dev/null, coz je takove virtualni zarizeni, ktere automaticky vsechno zahodi a nikam nic nezapisuje. Ale nebudes mit samozrejme zadny log, jestli spusteni dopadlo uspesne, nebo ne. Zaroven ale tvuj skript nemuze byt interaktivni, protoze nikdo nebude schopny ho ovladat.

Nahoru Odpovědět 6. března 11:21
Neni dulezite mnoho vedet a znat. Dulezite je vedet, co je treba.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.