¿Es posible enviar archivos adjuntos por correo electrónico desde la línea de comandos?
Si es posible, me gustaría algo tan simple como:
mail -a myfile.txt -t [email protected] -s "Here's my file"
command-line
email
files
conorgriffin
fuente
fuente
mail
(akamailx
) es ignorante de MIME, por lo tanto, no puede manejar archivos adjuntos de ninguna manera que no sea de 1980. Esta es una buena pregunta, estoy buscando el canónico canónico MUA; más por venir.Respuestas:
De todos los agentes de usuario de correo en el repositorio de Ubuntu, parece que mutt es el MUA de línea de comandos que está bendecido con soporte a largo plazo.
Según el manual , puede hacer algo exactamente como:
excepto que no irá a ningún lado ya que uno también necesita un Agente de transferencia de correo. Los populares son:
y los únicos que Canonical parece admitir son postfix (gracias por la corrección Steve) y exim4 .
También se podría decir que xdg-email también es un MUA de Ubuntu adecuado, pero es un front-end básico que solo ejecuta su MUA preferido en su nombre.
Si desea consejos sobre qué MTA podría ser adecuado para su uso, quizás abra otra pregunta aquí.
fuente
mutt
comando de ejemplo funcionó como se anuncia. Por cierto, nullmailer tiene un front-end falso de sendmail para que la mayoría de los programas que esperan hablar con sendmail sean trasladados a un MTA real sin ningún esfuerzo de mi parte.También tuve problemas para enviar archivos adjuntos. Cuando envié un correo electrónico sin archivo adjunto, fue exitoso pero no con el archivo adjunto. Este problema era inexistente con
sendemail
,mutt
,mail
,mailx
,uuencode
comandos.Afortunadamente, se resolvió de manera divertida. Yo uso Gmail para enviar correos electrónicos. Puede configurar su gmail para enviar correos electrónicos a través de comandos en la terminal como se declara en http://www.linuxandlife.com/2013/01/send-email-from-linux-terminal.html .
Puede enviar un correo electrónico de texto usando:
pero no puede enviar el mismo archivo como archivo adjunto que a continuación:
o:
Finalmente, entendí que solo este formato podía enviar un archivo adjunto:
Curiosamente, la diferencia es la existencia del comando "echo".
Actualización: 201808
Parece que la
-a
opción se ha cambiado con mayúsculas-A
para adjuntar ahora. El-a
parece ser para cambiar el encabezado de acuerdo con el documentofuente
.zshrc
archivo a alguien y, aunque usomail
mucho para enviar mensajes rápidos, intentar enviar un archivo adjunto no funcionaba. Solo necesitaba confirmación de que era posible darse cuenta de que el orden de los argumentos es muy importante. Esto funcionó para mí:mail -s "zshrc" -a ~/.zshrc [email protected]
... por supuesto, aún tenía que escribir el cuerpo del mensaje y presionarctrl+d
la última línea en blanco.mail [email protected] -a ~/.zshrc
"funcionó" en el sentido de que envió el mensaje pero no envió el archivo. Si lo hubiera intentadomail [email protected] -a ~/.zshrc -s 'zshrc'
, habría sido obvio que se ignoraron los parámetros después de la dirección del destinatario.Descubrí que el comando y los parámetros se han cambiado recientemente.
Si desea enviar sus archivos adjuntos con este comando:
La opción
attachment
debería ser-A
cuál es CAPITALA
.fuente
Es posible que desee enviar un archivo desde el shell , pero de lo contrario utilice Thunderbird .
En este caso, try
thunderbird -remote ...
es útil, suponiendo que thunderbird generalmente se esté ejecutando:El comando abre una ventana de redacción de correo de una instancia de Thunderbird en ejecución.
La dirección "De" es su dirección predeterminada configurada en Thunderbird.
Además, se utilizan las configuraciones de cuenta existentes , no se necesita una configuración por separado.
Para un correo dirigido a
[email protected]
, con el asunto "S", el cuerpo "B" y un archivo adjunto/some/absolute/file.txt
, el comando esHay dos problemas:
El archivo adjunto debe ser proporcionado por una ruta absoluta , que es tediosa en la práctica. Eso se puede manejar usando
readlink -f
para resolver rutas relativas:Además, el comando es demasiado largo. Utilice un script de shell o una función de shell, con cuatro argumentos:
Con esta función, el comando se vuelve legible:
abrirá una ventana de "Escritura" de Thunderbird con el archivo adjunto , y el texto De, Para, Asunto y cuerpo completo. Se puede editar antes de enviarlo.
fuente
heirloom-mailx
El paquete en Debian proporciona elmailx
comando para enviar archivos adjuntos MIME fácilmente. siguientes trabajos para mí;fuente
mail
emailx
incluido con RH -alikes tiene-a
para los archivos adjuntos, pero la incluida en Debian -alikes no.Deseo agregar otra respuesta que se utiliza para agregar texto del cuerpo junto con el archivo adjunto. ¡¡Aclamaciones!!
fuente