Скрипты для отправки себе файла по электронной почте

Скрипты для отправки себе файла по электронной почте

Следующая команда отправляет мне файл по электронной почте:

sudo mail -a FILE_ADDRESS -s "Subject of E-mail" [email protected]

Вопрос: Как превратить эту команду в однострочную, чтобы можно было просто ввести что-то вроде

email_myself FILE_ADDRESS

Похожий вопрос: есть ли способ сделать так, чтобы мне нужно было просто щелкнуть правой кнопкой мыши по файлу, а затем выполнить эту команду? Или сделать что-то вроде отправки по электронной почте содержимого моего буфера обмена (например, если это файл, он отправляет мне по электронной почте файл, или если это текст, он отправляет мне по электронной почте текст)? (Обратите внимание, что я использую Ubuntu). Я думаю, что это был бы невероятно полезный скрипт :)

решение1

Создайте функцию:

email_myself() { sudo mail -a "$1" -s "Subject of E-mail" [email protected]; }

Если вы хотите, чтобы ваша функция работала постоянно, и если это bashваша оболочка, добавьте определение в виде строки в ваш ~/.bashrc.

Для тех, кто предпочитает shell-скрипты функциям, создайте файл с именем email_myself, сделайте его исполняемым ( chmod +x email_myself) и сохраните его где-нибудь на своем компьютере PATH:

#!/bin/sh
sudo mail -a "$1" -s "Subject of E-mail" [email protected]

Другие mailпрограммы

В моей системе mailкоманда так не работает. Во-первых, sudoона не нужна. Во-вторых, -aона не прикрепляет файл; она используется для указания дополнительных заголовков. Поэтому я бы использовал:

email_myself() { mail -s "Subject of E-mail" [email protected] <"$1"; }

Связанный контент