Scripts para enviar um arquivo para mim mesmo por e-mail

Scripts para enviar um arquivo para mim mesmo por e-mail

O seguinte comando me envia um arquivo por e-mail:

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

Pergunta: Como faço para transformar este comando em uma linha, para que eu possa digitar algo como

email_myself FILE_ADDRESS

Uma questão relacionada é a seguinte: existe uma maneira de fazer com que tudo o que preciso fazer seja clicar com o botão direito em um arquivo e então executar este comando nele? Ou fazer algo como enviar para mim mesmo por e-mail o conteúdo da minha área de transferência (de forma que, se for um arquivo, ele me envie o arquivo por e-mail ou, se for um texto, ele me envie o texto por e-mail)? (Observe que estou usando o Ubuntu). Acho que este seria um script incrivelmente útil :)

Responder1

Faça uma função:

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

Se você deseja que sua função permaneça permanentemente e assumindo que esse bashseja o seu shell, adicione a definição como uma linha ao seu arquivo ~/.bashrc.

Para aqueles que preferem shell scripts a funções, crie um arquivo chamado email_myself, torne-o executável ( chmod +x email_myself) e salve-o em algum lugar no seu PATH:

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

Outros mailprogramas

No meu sistema, o mailcomando não funciona assim. Por um lado, sudoé desnecessário. Por outro lado, -anão anexa arquivo; é usado para especificar cabeçalhos adicionais. Assim, eu usaria:

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

informação relacionada