Не се засягай, но ми е трудно да намеря каквато и да е била полза или логика от това да се праща съдържанието на syslog файла от предния ден на локална (или друга) поща, още по-малко от начина по който е направено:
(прескачам събитията около subject) Това което си написал търси " X " в syslog файл, където X е денят от текущата дата - 1. Това всъщност е число или цифра оградено с по един blank space.. нищо общо с каквато и да е била акуратност. А какво става на 1-ви? Грепваш " 0 " от този източник.. вероятно върви и системен cron job, който ти архивира тези файлове ежедневно.. Това което се опитваш да направиш може да се изпълни със сходен one-liner в crontab-а ти 59 23 * * * grep ^"`date +%b' '%d`" /var/log/syslog | mail -s "`blah`" [EMAIL PROTECTED] Ако писмото в този си вид отива на отдалечена поща се замисли, че доста хора по пътя могат да го прочетат, а записи като Sep 24 15:56:18 adm login[3831]: FAILED LOGIN 1 FROM FOR rootnesymmnogoostyr, Authentication failure не са рядкост... :) Мисля че е по-идейно да ползваш софтуер (вече ти препоръчаха), който следи за определени събития по логовете ти и те алармира по даден критерий. В. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of MafiaInc Sent: Saturday, September 24, 2005 9:55 AM To: lug-bg@linux-bulgaria.org Subject: lug-bg: Изпращане на syslog по e-mail с един ред Искам всяка сутрин да си самоизпращам syslog файла по електронната поща и за целта добавих един ред в crontab, който върши работа, но според мен не е достатъчно оптимизиран и може още да се смачка, не съм запознат изцяло с възможностите на awk. Какъв по-кратък вариянт предлагате на следния ред: echo "Subject for " > /tmp/subject ; date +%e | awk '/.*/ {$1-- ; print $1}' >> /tmp/subject ; date "+ %b %Y" >> /tmp/subject ; cat /tmp/subject /var/log/syslog | grep " `date +%e | awk '/.*/ {$1-- ; print $1}'` " | /var/qmail/bin/qmail-inject [EMAIL PROTECTED] > /dev/null ; rm /tmp/subject -- MafiaInc (c) 1983 - 2005