Mám problém se spouštěním skriptu na OpenWRT jak pomocí CRONu tak i rc.d. Skriptík jsem si odladil a pokud ho pustím jako root na routeru z příkazové řádky, tak se provede správně:
#!/bin/ash
Teplota=`egrep -o "[0-9.+-]+" /tmp/teplota.txt`
#echo $Teplota
sqlite3 /opt/www/Databaze/teploty.db "INSERT INTO venku VALUES (NULL ,DATETIME('NOW'),'$Teplota');" &
echo "Naměřeno!" >> /tmp/log.txt
Problém s tím, že neznal egrep a sqlite (nainstalované na /opt) jsem vyřešil přidáním:
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/opt/bin:/opt/sbin:/opt/usr/bin:/opt/usr/sbin
export LIB=/opt/lib:/opt/usr/lib
export LD_LIBRARY_PATH=/opt/lib:/opt/usr/lib
Kde je chyba? Při spuštění CRONem se všechny příkazy ve skriptu provedou jen egrep -o "[0-9.+-]+" /tmp/teplota.txt nevrátí nic? Jaký uživatel u OpenWRT spouští příkazy CRONu?
Ani příkazegrep -o "[0-9.+-]+" /tmp/teplota.txt >> /tmp/Tlog.txt 2>&1
nevrátí nic a ani nevypíše chybu.