Как отправить по электронной почте результаты загрузки wget с помощью почтовой команды Linux?

StackOverflow https://stackoverflow.com/questions/1298029

Вопрос

Мне нужно написать сценарий, который будет загружать файл (на основе предоставленного URL-адреса этого файла) с помощью wget, а затем передавать результат команде mail, чтобы его можно было отправить по указанному адресу электронной почты.Это будет использоваться в проекте на основе PHP.

«Передача результата» предпочтительно должна представлять собой встроенную ссылку на файл на сервере, чтобы получатель почты мог просто щелкнуть ссылку и получить файл локально.

У кого-нибудь есть опыт в этой области объединения команд, которым они могли бы поделиться?

Это было полезно?

Решение

Псевдокод может даже работать напрямую: сохраните его в файл и вызовите с двумя параметрами: первый — это URL-адрес удаленного файла, который вы хотите загрузить, второй — адрес электронной почты, на который отправить уведомление.

Переменная LOCALPATH должна представлять собой каталог, доступный с www, а LOCALURL должен соответствовать этому местоположению.

#!/bin/bash
URL=$1
FILE=`basename $URL`
EMAIL=$2
LOCALURL=http://yourdomain.com/files
LOCALPATH=/var/www/html/files
cd $LOCALPATH
wget $URL
cat<<END|mail -s "New file available" ${EMAIL}
Hello, 

   your new file can be downloaded now from:

   ${LOCALURL}/${FILE}

Thanks!
END

Другие советы

Использовать Привязка PHP для CURL

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top