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
-
Ahojte, mám jeden skript ktorí mi pri manuálnom spustení funguje, avšak cez CRON nie.
#!/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
-
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.
-
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"
-
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.
-
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.
-
Tak som to nakoniec vyriešil sám. Chyba bola na začiatku
Zle: #!/bin/sh
Správne: #!/bin/bash