Caraku Melakukan Otomasi Proses Pengiriman Log Pekerjaan Harian

Di tempat kerjaku sekarang, setiap hari harus mengirim Log pekerjaan tepat jam 5 sore. Membosankan sih, kalau setiap hari harus membuka gmail, menulis alamat email yang sama, menulis subject yg sekuensial, dan klik tombol kirim. Serius, itu pengulangan yang membosankan, awal jalan 1 minggu aja dah bikin bosan. Waktu yg dikonsumsi untuk perulangan bisa kupakai untuk hal lain.

Kenapa tidak kita otomasi saja? jadi kita fokus nulis body emailnya aja. Yeah, ku realisasikan, begini step-nya:

  • Setup msmtp pakai email kantor.
  • Set msmtp sbg alias sendmail.
  • Bikin bash script untuk generate template email harian:
1
2
#!/usr/bin/bash
printf "From:sensordemiprivasi@sensor.com\nSubject:Log Pekerjaan $(date +%Y-%m-%d)\n\nSumarsono\nSysadmin\n\n1. " > /home/sumarsono/Sumarsono/Log-Pekerjaan-$(date +%Y%m%d)
  • Bikin bash script untuk send email harian:
1
2
#!/usr/bin/bash
cat /home/sumarsono/Sumarsono/Log-Pekerjaan-$(date +%Y%m%d) | msmtp -a default hrd@sensor.com,sensor@sensor.com
  • Bikin crontab buat eksekusi dua script tadi, generate template email setiap jam 9 pagi. Kemudian kirim email tiap jam 17.
1
2
0 9 * * *       /usr/bin/bash /home/sumarsono/Sumarsono/sumar-bash/generateMail.sh
0 17 * * *      /usr/bin/bash /home/sumarsono/Sumarsono/sumar-bash/sendMail.sh

Tips! Kalian bisa generate cron di crontab.guru

  • Selesai.

Jadi ya daily task bisa dimasukin ke template, terus saya fokus ngisi body email dengan task-task yg kukerjakan hari itu. Jam 17.00 sistem secara otomatis mengirim email.