Domanda :Come posso inviare un'e-mail con allegato dalla riga di comando di Linux (o dallo script della shell)? Inoltre, posso inviare sia l'allegato che il corpo del testo insieme in un'e-mail dalla riga di comando di Linux?
Rispondi :puoi inviare sia l'allegato che il corpo del testo (o solo l'allegato con una riga dell'oggetto) dalla riga di comando di Linux come spiegato di seguito.
1. Invia un'e-mail con oggetto e corpo
In genere invii un'e-mail dalla riga di comando di Linux con una riga dell'oggetto e il corpo del testo come mostrato di seguito. Tieni presente che dovresti digitare un . (punto) in una riga separata per indicare che il corpo del testo è terminato.
$ mail [email protected] Subject: Email Testing from Linux Dear, It is very easy to send an email from Linux command line. Thanks, Ramesh . Cc: [email protected]
Se vuoi leggere il corpo del testo da un file (ad esempio body-message.txt), invia l'email come mostrato di seguito.
$ cat body-message.txt | mail -s "Email testing from Linux" [email protected]
2. Invia un'e-mail con allegato
Per inviare un allegato dall'e-mail, utilizzare il comando uuencode. Su RedHat (e relative distribuzioni), uuencode fa parte del pacchetto sharutils. Quindi, installa le sharutils come mostrato di seguito.
# rpm -ivh sharutils-4.6.1-2.i386.rpm Preparing... ############################## [100%] 1:sharutils ############################## [100%]
Dopo aver confermato di avere uuencode, invia l'email con un allegato come mostrato di seguito.
$ uuencode input-attachment.txt output-attachment.txt | \ mail -s "Email With Attachment" [email protected]
In questo esempio,
- input-attachment.txt è il file che desideri allegare all'email.
- Se desideri che il file venga allegato con un nome diverso, specificalo come 2° parametro in uuencode. In questo esempio, il contenuto del file input-attachment.txt verrà allegato come output-attachment.txt
Nota:uuencode può essere utilizzato anche per inviare allegati base64 come mostrato di seguito.
$ uuencode -m input-attachment.txt output-attachment.txt | \ mail -s "Email With Base64 Attachment" [email protected]
3. Invia un'e-mail con allegato e corpo
Puoi inviare un'e-mail con allegato e corpo del messaggio come mostrato di seguito.
$ ( cat body-message.txt; uuencode input-attachment.txt output-attachment.txt ) \ | mail -s "Email With Body Text and Attachment" [email protected]