Как найти файл с помощью скрипта оболочки в cron (Ubuntu) - PullRequest
0 голосов
/ 02 декабря 2018

Я много часов пытался найти свой лог-файл, который будет приобщаться к электронной почте в cron job. В моем сценарии есть две работы.

1.Первое задание работает успешно и создает файл журнала, т. Е. '01 -12-2018_19: 10: 02.log '.

2. Второе задание - найти этот файл журнала и отправить почту.мне.

Мой сценарий оболочки ниже, он работает нормально, когда я выполняю его через терминал.Но это не работает через cron.Моя конфигурация cron:

20 21 * * * /bin/sh /home/cesur/jobShell/mailLogFile.sh

Мой mailLogFile.sh:;

#!/bin/bash

echo "This is the message body" | mail -s "This is automated job mail" -A $(find $PWD -type f -name $(cd /home/cesur/log && ls -1 -t | head -1)) tayfuncesur35@gmail.com

Мой скрипт mailLogFile.sh работает нормально, когда я выполняю его через терминал!

Спасибо за вашу помощь.

Когда я просматриваю логи, нет ошибок, но нет и электронной почты

Dec 01 21:20:02 ** cron[664]: (root) RELOAD (crontabs/root)
Dec 01 21:20:02 ** CRON[12597]: pam_unix(cron:session): session opened for user root by (uid=0)
Dec 01 21:20:02 ** CRON[12598]: (root) CMD (/home/cesur/jobShell/mailLogFile.sh)
Dec 01 21:20:02 ** sSMTP[12599]: Creating SSL connection to host
Dec 01 21:20:02 ** sSMTP[12599]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
Dec 01 21:20:06 ** sSMTP[12599]: Sent mail for root@gmail.com (221 2.0.0 closing connection p6sm11751520pfn.53 - gsmtp) uid=0 username=root outbytes=715
Dec 01 21:20:06 ** CRON[12597]: pam_unix(cron:session): session closed for user root
...