El siguiente comando me envía un archivo por correo electrónico:
sudo mail -a FILE_ADDRESS -s "Subject of E-mail" [email protected]
Pregunta: ¿Cómo convierto este comando en una sola línea para poder escribir algo como
email_myself FILE_ADDRESS
Una pregunta relacionada es la siguiente: ¿hay alguna manera de lograr que todo lo que tenga que hacer sea hacer clic derecho en un archivo y luego poder ejecutar este comando en él? ¿O hacer algo como enviarme por correo electrónico el contenido de mi portapapeles (de modo que si es un archivo, me envía el archivo por correo electrónico, o si es texto, me envía el texto por correo electrónico)? (Tenga en cuenta que estoy usando Ubuntu). Creo que este sería un script increíblemente útil :)
Respuesta1
Haz una función:
email_myself() { sudo mail -a "$1" -s "Subject of E-mail" [email protected]; }
Si desea que su función permanezca permanentemente, y asumiendo que ese bash
es su shell, agregue la definición como una línea a su archivo ~/.bashrc
.
Para aquellos que prefieren los scripts de shell a las funciones, cree un archivo llamado email_myself
, hágalo ejecutable ( chmod +x email_myself
) y guárdelo en algún lugar de su PATH
:
#!/bin/sh
sudo mail -a "$1" -s "Subject of E-mail" [email protected]
Otros mail
programas
En mi sistema, el mail
comando no funciona así. Por un lado, sudo
es innecesario. Por otro, -a
no adjunta archivo; se utiliza para especificar encabezados adicionales. Por lo tanto, usaría:
email_myself() { mail -s "Subject of E-mail" [email protected] <"$1"; }