9 mail/mailx kommando eksempler til at sende e-mails fra kommandolinjen på Linux

Send mails fra kommandolinjen

e-mail-kommandoen er en væsentlig en, der bør være tilgængelige på en linux-server, således at forskellige tjenester og andre web-applikationer kan generere og sende e-mails.

i et tidligere indlæg på mail-kommando så vi, hvordan mail-kommandoen kan bruges til at sende e-mails fra kommandolinjen på din Linu. – server.,

i denne tutorial bruger vi en forbedret version af mail-kommandoen. Det hedder mail. (eller bare mail når det er installeret), og det kan gøre mange flere ting end hvad den ældre mailkommando fra GNU mailutils-pakken kan gøre.

Hvordan virker det

kommandoen mail / Mail.har brug for en lokal smtp-server (MTA), der kører for at kunne levere e-mails. Ruten taget af e-mailen er lidt som denne –

mail -> sendmail -> local MTA -> recipient MTA 

modtageren MTA ville være Gmails smtp-server, hvis din modtager er nogen på gmail.com for eksempel., For den lokale MTA skal du installere en smtp-server som Postfi.. En grundlæggende installation af Postfi.med minimal konfiguration ville fungere i de fleste tilfælde.

installer mail.- kommandoen

På Ubuntu/Debian-baserede systemer er mail. – kommandoen tilgængelig fra 2 forskellige pakker –

1. arvestykke-Mail 2. bsd-mail

Vi skal bruge heirloom-mail. – pakken, fordi den har flere funktioner og muligheder.
på CentOS/Fedora-baserede systemer er der kun en pakke med navnet “mail.”, som er arvestykke-pakken.,

for at finde ud af, hvilken mail. – pakke der er installeret på dit system, skal du kontrollere output “man mail.” og rulle ned til slutningen, og du skal se nogle nyttige oplysninger.

# ubuntu/debian$ sudo apt-get install heirloom-mailx# fedora/centos$ sudo yum install mailx

brug af mail. – kommandoen

Når det er installeret, kan mail. – kommandoen refereres direkte med navnet mail, så du skriver bare det i kommandolinjen.

1. Enkel mail

Kør følgende kommando, og derefter venter mail.på, at du indtaster e-mail-meddelelsen. Du kan trykke på enter for nye linjer. Når du er færdig med at skrive meddelelsen, skal du trykke på Ctrl + D og mail.ville vise EOT.,

efter end mail.leverer automatisk e-mailen til destinationen.

$ mail -s "This is the subject" Hi someoneHow are youI am fineByeEOT

2. Tag besked fra en fil

e-mailens meddelelsesdel kan også tages fra en fil.

$ mail -s "This is Subject" < /path/to/file

meddelelsen kan også røres ved hjælp af echo-kommandoen –

$ echo "This is message body" | mail -s "This is Subject" 

3. Flere modtagere

for at sende mailen til flere modtagere skal du angive alle e-mails adskilt af et komma

$ echo "dette er meddelelsesorgan" /mail-s "Dette er emne",  

4., CC og BCC

indstillingerne "-C" og "-B" kan bruges til at tilføje henholdsvis CC-og BCC-adresser.

 $ echo " dette er meddelelsesorgan | /mail-s "Dette er Emne" -C 

5. Angiv fra navn og adresse

for at angive et "Fra" navn og adresse skal du bruge "-r" - indstillingen. Navnet skal efterfølges af adressen indpakket i"".

$ echo "Dette er brødtekst" | mail-s "Dette er et Emne," r "Harry<>" 

6., Angiv" svar-til " - adresse

svaret på adressen er indstillet med den interne valgvariabel "replyto" ved hjælp af "-s" - indstillingen.

7. Vedhæftede filer

vedhæftede filer kan tilføjes med indstillingen "-a".

$ echo "Dette er brødtekst" | mail-s "Dette er et Emne," r "Harry<>" -en /sti/til/fil 

8. Brug ekstern SMTP-server

Dette er en eksklusiv funktion, som du kun får med heirloom mail.og ikke bsd mail., eller mail-kommandoen fra gnu mailutils eller mutt-kommandoen.,

mail. - kommandoen kan bruge en ekstern smtp-server til at bruge til at videresende meddelelsen. Syntaksen er lidt lang, men giver mening.

Her er en opdeling

Du kan bruge gmail smtp-servere og sende e-mails via din gmail-konto. Det er så sejt!
for Gmail specifikt skal du aktivere mindre sikre apps-indstillinger, før du kan sende e-mails på den måde.

9. Verbose-se smtp-kommunikation

Når du bruger eksterne smtp-servere, kan du vælge at se hele smtp-kommunikationen, der udføres i baggrunden., Dette er nyttigt specielt ved test eller fejlfinding af smtp-servere.

fejlfinding

Hvis mails ikke leveres korrekt, skal du kontrollere et par ting. Den første ting at kontrollere er, at en smtp-server (MTA) kører lokalt. Netstat-kommandoen kan fortælle, at

Hvis en stmp-server som Postfi.kører, og stadig mails ikke går, så prøv at konfigurere Postfi. igen. På Ubuntu / Debian-systemer kan dette gøres med kommandoen dpkg-reconfigure

$ sudo dpkg-reconfigure postfix

prøv derefter igen, mail-kommandoen, og den skal fungere., Hvis det stadig ikke gør det, kan du prøve at kontakte din serverudbyder.

Ingen mails fra lokale systemer

Hvis du forsøger at sende e-mails fra din lokale computer til en gmail-adresse, din e-mail vil sandsynligvis blive afvist, så du skal ikke prøve at gøre det.

dette skyldes, at almindelige computere, der er tilsluttet internetadresse, har en ip-adresse, der ikke er knyttet til noget gyldigt domæne som sådan, og gmail verificerer strengt sådanne legitimationsoplysninger, før de godkender en mail til at gennemgå.,

Noter og Ressourcer

Bortset fra at mailx, der er andre værktøjer, som Swaks og smtp-cli, der kan bruges til at sende mails fra kommandolinjen og understøtter forskellige funktioner som specificerer smtp-servere og tilføjelse af vedhæftede filer og så videre.

men mail.kommando er tilgængelig i standard repositories af mest almindelige distros, så kan installeres nemt. Yderligere opretholder den en syntaks, der ligner den af mail-kommandoen, hvilket gør det til et fald i erstatning for den ældre mail-kommando.,

mail. - kommandoen er endda i stand til at læse mails fra eksterne IMAP-servere, men det er noget, vi holdt ude af dette indlæg og ville tale senere. Hvis du vil vide mere, skal du tjekke man-siden for mail. - kommandoen med "man mail.".

Share

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *