Здесь впервые появился пользователь.Нужна wget, чтобы написать 2 файлам
Linux 4.4.36 колос-сервера 2.mga5 # 1 SMP Вт 6 декабря 17:32:56 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
GNU Wget 1,15 построен на Linux-гну
GNU Баш, версия 4.3.48 (1) -release (x86_64-Mageia-Linux-гну)
у меня хрон, который использует Wget для загрузки файла. Простая работа. Я хочу видеть подтверждение этой работы в своем письме. Я был частично успешным в том, чтобы заставить это работать, но письмо появляется с выводом cron, а не с информацией о журнале wget. Вот пример.
Работа хрон:
/usr/local/bin/update_clouds.sh ; /usr/bin/mail -s "Attempted Cloud Update" -r [email protected] [email protected] < /usr/share/xplanet/logs/update_clouds.txt
Сценарий оболочки (update_clouds.sh) инициализируется этой хрон делает это:
wget --user=<usr> --password=<passwd> -O /usr/share/xplanet/images/clouds.jpg http://xplanetclouds.com/clouds/2048/clouds_2048.jpg -a /usr/share/xplanet/logs/clouds.log
Это работает, но моя электронная почта несет весь журнал Wget (/usr/share/xplanet/logs/clouds.log) в теле. Я просто хочу, чтобы последняя транзакция появлялась в этом письме.
Первоначально, я думал, что могу использовать оба параметра регистрации wget, -o и -a. Я мог бы добавить в системный журнал и перезаписать файл, который я хочу в теле письма, но это не работает. Wget использует последний параметр в командной строке, а не для обоих.
Я получил решение, в котором я просто произвольно вытащил последние 30 строк из журнала wget и отправил его по почте. Он работал, но он неэффективен и уродлив. Это выглядит так:
/usr/local/bin/update_clouds.sh ; tail -30 /usr/share/xplanet/logs/clouds.log > /usr/share/xplanet/logs/update_clouds.txt ; /usr/bin/mail -s "Attempted Cloud Update" -r [email protected] [email protected] < /usr/share/xplanet/logs/update_clouds.txt
Я пробовал использовать «тройник», но это тоже не работает. Кажется, что tee ничего не пропускает и создает пустой файл. Я получаю электронную почту, но в теле ничего нет. Я никогда не использовал тройник раньше и не уверен, что у меня есть ручка.
wget --user=mark9118 --password=xplanetmap -O /usr/share/xplanet/images/clouds.jpg http://xplanetclouds.com/clouds/2048/clouds_2048.jpg -a /usr/share/xplanet/logs/clouds.log 2>&1 |tee /usr/share/xplanet/logs/update_clouds.txt
Если вы зачитали это далеко, вы, возможно, заметили, что, похоже, существует много способов кожи этой кошки. Мое предпочтение состоит в том, чтобы wget загрузил файл и проанализировал файл журнала, а затем cron, чтобы просто запустить команду и отправить электронное письмо.
Если вы считаете, что мой подход к этому просто неверен, пожалуйста, дайте мне знать, если есть более простой, более функциональный и экономичный способ сделать это. Я готов посмотреть на это.
Любая помощь приветствуется.
Марк