Ada klien baris perintah berbasis terminal lain yang juga dapat digunakan untuk mengirim email seperti sendmail, mutt, SSMTP, telnet tetapi dalam panduan ini kita akan fokus pada mail
perintah.
Perintah mail memanggil biner sendmail standar (/usr/sbin/sendmail) yang pada gilirannya menghubungkan ke MTA lokal untuk mengirim email ke tujuannya. MTA lokal adalah server smtp yang berjalan secara lokal yang menerima email pada port 25.
Ini berarti bahwa server smtp seperti Postfix harus dijalankan pada mesin tempat Anda ingin menggunakan perintah mail. Jika tidak ada yang berjalan Anda mendapatkan pesan kesalahan "send-mail:Cannot open mail:25".
Pemasangan
Instal dengan perintah ini:
Untuk Ubuntu
sudo apt-get install mailutils
Untuk centos 7
sudo yum install -y mailx
Untuk centos 8/Alma Linux/Rhel
sudo dnf install -y mailx
Uji apakah perintah berhasil diinstal dengan perintah ini:
mail
Perintah di atas memeriksa apakah ada email untuk pengguna saat ini. Anda akan melihat output seperti ini:
➜ mail
No mail for centos
Penggunaan
Mengirim email sederhana
Gunakan perintah ini untuk mengirim email ke [email protected]
. -s
argumen baris perintah adalah untuk menentukan subjek.
mail -s "Test mail" [email protected]
Perintah di atas akan memblokir setelah menekan enter menunggu Anda mengetik pesan Anda. Setelah selesai gunakan Ctrl-D
untuk memberi tahu klien email bahwa Anda telah selesai dan email siap dikirim.
❯ mail -s "Test mail" [email protected]
Hey John,
Please remember to send me the Linux Book.
Regards,
Me.
EOT
EOT
dimasukkan ketika saya menekan Ctrl-D
. Setelah Anda melakukannya, perintah email akan mengirimkan pesan untuk pengiriman dan selesai.
Kirim pesan dengan konten dari file
Gunakan perintah ini untuk mengirim pesan dari file /path/to/file.txt
.
mail -s "Test mail" [email protected] < /path/to/file.txt
Anda juga dapat menggunakan liner yang satu ini di mana Anda menggemakan konten untuk dikirim lalu menyalurkannya ke perintah email.
echo "Hello world" | mail -s "Test mail" [email protected]
Kirim email ke beberapa penerima
Untuk mengirim email ke beberapa penerima, Anda dapat menggunakan daftar email yang dipisahkan koma seperti dalam contoh ini:
echo "Hello world" | mail -s "Test mail" [email protected],[email protected]
Menambahkan penerima CC dan BCC
Alamat blind carbon copy (BCC) dan carbon copy (CC) juga dapat dilampirkan. Gunakan -c <email>
untuk CC dan -b <email>
untuk bcc.
Contoh ini menentukan CC dan BCC:
echo "Hello world" | mail -s "Test mail" -c [email protected] -b [email protected]
Tentukan Dari nama dan alamat
Anda dapat menggunakan opsi -r
untuk menentukan nama dan alamat dari seperti yang terlihat di bawah ini:
echo "Hello world" | mail -s "Test mail" –r "Kip<[email protected]>" [email protected]
Atau, Anda dapat menggunakan -a
untuk menambahkan header tambahan untuk dilampirkan dengan pesan. Berikut adalah contoh cara memberikan FROM
sebagai bagian dari itu.
echo "Hello world" | mail -s "Test mail" [email protected] -aFrom:[email protected]
Untuk menentukan nama dari, gunakan sintaks berikut:
echo "Hello world" | mail -s "Test mail" [email protected] --aFrom:Kip\<[email protected]\>
Harap dicatat bahwa kita harus menghindari panah kurang dan besar karena mereka memiliki arti khusus untuk prompt shell. Saat Anda mengeluarkan perintah dari dalam beberapa skrip, Anda akan menghilangkannya.
Tentukan alamat “Balas-Ke”
Gunakan replyto
untuk menentukan balasan ke alamat seperti dalam contoh ini:
echo "Hello world" | mail -s "Test mail" [email protected] [email protected]
Email dengan lampiran
Kirim email dari [email protected]
ke [email protected]
dengan lampiran.
mail -s "The File you requested" -a ~/Documents/file.txt -r [email protected] [email protected] <<EOF
Hi jane,
Please find the file requested attached.
Kind Regards,
John.
EOF
Kirim email ke pengguna sistem lokal
Untuk mengirim email ke pengguna sistem lokal, hanya tentukan nama pengguna sebagai ganti penerima. Anda dapat menambahkan nama host tetapi tidak perlu menggunakan @hostname
.
mail -s "Test Subject" username
Mengaktifkan Verbose
Jika Anda perlu memeriksa apa yang terjadi saat email sedang diproses, aktifkan keluaran verbose dengan arg -v
. Ini bagus untuk pemecahan masalah seperti ketika Anda ingin memeriksa perintah SMTP yang digunakan oleh perintah email. Ini contohnya:
mail -v -s "Hello theere" [email protected] <<< 'This is the message'