Страница 1 из 1

отправка файла по почте из консоли

Добавлено: 2009-08-28 13:03:24
bugness
Доброго времени суток.

Каким образом можно отправить файл из консоли? Целый день ломал голову над этой задачей, получилось что-то вроде:
# b64encode file.bz2 file.bz2 | mail -s "Subject" e@mail.ru
Но на выходе получается не письмо с аттачем, а письмо с текстом

Код: Выделить всё

begin-base64 644 xz.txt
CiAoZGMwKSBndy5udHUubGFuIGF0IEF1ZyAyOCAxNzowMDowNyAtIEF1ZyAyOCAxNzozMDoxNQog
U3VtbWFyeTogMTY2OTQ5MTcgZGF0YSBieXRlcywgMTkxNzc2MTAgYWxsIGJ5dGVzLCAzMCByZWNv
cmRzCiAgICAgRnJvbSAgICAgICAgICAgUG9ydCAgICAgICAgIFRvICAgICAgICAgICAgUG9ydCAg
......
ICAgIGNsaWVudCAgODkuMTA1LjE1NC4zMyAgICAgIDgwICAgICAgdGNwICAgICAgIDIwODYgICAg
ICAgMjM2Ngo4OS4xMDUuMTU0LjUgICAgICAgNTg4OTYgICA2NC4xMi4yNi43MyAgICAgICAgY2xp
ZW50ICB0Y3AgICAgICAgIDE4MCAgICAgICAyMDYwCg==
====
У кого какие идеи?
В принципе и это сгодится, только не охото потом обратно руками декодировать. :smile:

Re: отправка файла по почте из консоли

Добавлено: 2009-08-28 13:22:13
Гость
bugness писал(а):на выходе получается не письмо с аттачем, а письмо с текстом
а твой почтовый клиент распознает не-MIME вложения?

Re: отправка файла по почте из консоли

Добавлено: 2009-08-28 13:28:37
paradox
pine воспользуйся
или другой консольный клиент

Re: отправка файла по почте из консоли

Добавлено: 2009-08-29 14:01:50
Overseer
1) создай файл с заголовком

Код: Выделить всё

From: user1@host1.tld
To: user2@host2.tld
Subject: base64-encoded file
MIME-Version: 1.0
Content-Type: application/octet-stream; name="filename"
Content-Transfer-Encoding: base64

2) закодируй файл

Код: Выделить всё

mmencode filename > body
или

Код: Выделить всё

b64encode filename filename | grep -v base64 > body
3) отправь

Код: Выделить всё

cat header body | sendmail -t
или

Код: Выделить всё

cat header body | /usr/sbin/sendmail -t
получишь красивое письмо с аттачментом

Re: отправка файла по почте из консоли

Добавлено: 2009-08-29 15:21:54
tynix
/usr/ports/mail/heirloom-mailx

/usr/local/bin/mailx -a /some/path/file.name root@domain.org

Re: отправка файла по почте из консоли

Добавлено: 2009-08-29 17:42:27
Overseer
tynix писал(а):/usr/ports/mail/heirloom-mailx

/usr/local/bin/mailx -a /some/path/file.name root@domain.org
мм.. тогда так:

Код: Выделить всё

echo 'Text of the letter' | /usr/local/bin/mailx -a /path/to/file -s 'Subject' root@domain.org
# or
echo 'Text of the letter' | /usr/local/bin/mailx -a /path/to/file -a /path/to/secondfile -s 'Subject' root@domain.org

Re: отправка файла по почте из консоли

Добавлено: 2009-08-30 11:32:48
Dorlas
А я пользовался biabam - тоже нормально работает.

Re: отправка файла по почте из консоли

Добавлено: 2009-08-30 11:57:43
tynix
Overseer писал(а): мм.. тогда так:
я просто пример предложил, может ему не надо автоматом письма отправлять, а только с вложением проблемы.
все предложенные варианты рабочие, так что остаётся только выбрать

Re: отправка файла по почте из консоли

Добавлено: 2009-08-30 17:43:51
Alex Keda
я всю жизнь так отправлял:

Код: Выделить всё

cat /var/log/httpd/nginx-access.log.10.bz2 | uuencode nginx-access.log.10.bz2 | mail -s log admin@lissyara.su

Re: отправка файла по почте из консоли

Добавлено: 2009-08-31 6:07:43
bugness
Спасибо всем. Разобрался.