Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: Peterx 17 Března 2017, 16:53:56

Název: Nefunkčný skript cez CRON
Přispěvatel: Peterx 17 Března 2017, 16:53:56
Ahojte, mám jeden skript ktorí mi pri manuálnom spustení funguje, avšak cez CRON nie.

Kód: [Vybrat]
#!/bin/sh
echo start >> log.txt

premenna=nieco

if [ "$premenna" == "nieco" ]; then
echo $premenna >> log.txt
elif [ "$premenna" == "niecoine" ]; then
echo niecoine >> log.txt
else
echo nic >> log.txt
 fi;

Ak to spustím manuálne tak nájdem v log.txt "nieco", ak cez CRON tak tak nájdem v log.txt "nic"

Vie niekto poradiť?
Dík
Název: Re:Nefunkčný skript cez CRON
Přispěvatel: juwa2 17 Března 2017, 19:12:53
1. Zadáváš (v Cronu) plnou cestu k tomu skriptu?
2. Jde taky o to, jestli jsou dostatečná práva k provedení příkazu.
Název: Re:Nefunkčný skript cez CRON
Přispěvatel: Peterx 17 Března 2017, 20:14:25
Ano, cesta je ok, aj práva, ak si to prečítaš tak ten skript sa vykoná, len akurát ako by pri tom "if" nefungovalo to porovnanie. Do log.txt by malo byť zapísané "nieco", ale zapíše tam "nic"
Název: Re:Nefunkčný skript cez CRON
Přispěvatel: juwa2 17 Března 2017, 20:32:30
Ano, cesta je ok, aj práva, ak si to prečítaš tak ten skript sa vykoná, len akurát ako by pri tom "if" nefungovalo to porovnanie. Do log.txt by malo byť zapísané "nieco", ale zapíše tam "nic"
A co práva k zápisu do log.txt ?  Uvědom si, že ten Cron asi běží pod userem.
Název: Re:Nefunkčný skript cez CRON
Přispěvatel: Peterx 17 Března 2017, 20:34:27
Ano, cesta je ok, aj práva, ak si to prečítaš tak ten skript sa vykoná, len akurát ako by pri tom "if" nefungovalo to porovnanie. Do log.txt by malo byť zapísané "nieco", ale zapíše tam "nic"
A co práva k zápisu do log.txt ?  Uvědom si, že ten Cron asi běží pod userem.

OK, tak skúsim ešte raz, Tým že sa do log.txt vôbec niečo zapíše znamená že skript sa spustí a funguje, ale nie správne.
Název: Re:Nefunkčný skript cez CRON
Přispěvatel: Peterx 17 Března 2017, 22:05:20
Tak som to nakoniec vyriešil sám. Chyba bola na začiatku
Kód: [Vybrat]
Zle: #!/bin/sh
Správne: #!/bin/bash