Cron vytváří prázdné logy

cron

Cron vytváří prázdné logy
« kdy: 18. 09. 2014, 19:15:50 »
Hoj v cronu spoustim tady tento script a potrebuji ukladat stdout do log souboru

Kód: [Vybrat]
#!/bin/sh

cd /home/user/data;
ix=`ps aux | grep -v grep | grep "mujscript2.py" | awk '{ print $2 }'`
if [ -z "$ix" ];
then
echo "no PID, starting.";
/usr/bin/python /home/user/data/mujscript.py
/usr/bin/python /home/user/data/mujscript2.py
fi





cron vypada takhle
Kód: [Vybrat]
0 */1 * * * sh /home/user/data/checker.sh > /home/user/data/logs/$(date +'\%d-\%b-\%Y-\%H_\%M_\%S').log


Vytvari se mi log soubory s obsahem stdout.
Ale vytvari se mi i prazdne soubory, ktere nic neobsahuji (to kdyz se nesplni podminka toho scriptu).


Da se to nejak elegantne vyresit? Aby se soubor vytvoril jen pokud je co zapsat?
Nepovazuji za reseni dodatecne kontrolovat prazdne soubory a ty mazat.

Zkousel jsem do te podminky pridat

Kód: [Vybrat]
else
>&2 echo "exists: "$ix;
To ale nepomohlo, porad mi to vytvari prazdne soubory.




« Poslední změna: 18. 09. 2014, 19:56:15 od Petr Krčmář »


Re:Cron vytváří prázdné logy
« Odpověď #1 kdy: 18. 09. 2014, 20:19:45 »
Da se to nejak elegantne vyresit? Aby se soubor vytvoril jen pokud je co zapsat?
Zapisovat do logu až v tom skriptu.

cron

Re:Cron vytváří prázdné logy
« Odpověď #2 kdy: 18. 09. 2014, 20:52:08 »
Ano, takhle by se to dalo vyresit v pripade ze ten script je takto kratky.
Kdybych tam ale spoustel misto dvou dalsich skriptu treba 50, tak bych u kazdeho to presmerovani musel specifikovat :(



Re:Cron vytváří prázdné logy
« Odpověď #3 kdy: 18. 09. 2014, 21:16:40 »
Nemusel:

Kód: [Vybrat]
#!/bin/sh

cd /home/user/data;
ix=`ps aux | grep -v grep | grep "mujscript2.py" | awk '{ print $2 }'`
if [ -z "$ix" ];
then
exec > /home/user/data/logs/$(date +'\%d-\%b-\%Y-\%H_\%M_\%S').log
echo "no PID, starting.";
/usr/bin/python /home/user/data/mujscript.py
/usr/bin/python /home/user/data/mujscript2.py
fi

cron

Re:Cron vytváří prázdné logy
« Odpověď #4 kdy: 18. 09. 2014, 21:22:42 »
diky moc, tohle jsem neznal