1. 程式人生 > >Ubuntu Linux自動發郵件配置及郵件傳送指令碼

Ubuntu Linux自動發郵件配置及郵件傳送指令碼

測試環境:Ubuntu 11.10

1. 安裝mutt及msmtp軟體

sudo apt-get install mutt
sudo apt-get install msmtp

2. 編輯配置檔案vi ~/.muttrc
set sendmail="/usr/bin/msmtp"
set use_from=yes
set realname="Guobao Jiang"
set [email protected]
set envelope_from=yes

3.編輯配置檔案vi ~/.msmtprc  (賬號和密碼相應改動,最好把該檔案屬性改為:
chmod 700 ~/.msmtprc

其他人不能修改和檢視)
account default
host smtp.163.com
from 
[email protected]
auth plain user loveaborn password #### logfile ~/.msmtp.log

4.編寫自動傳送郵件指令碼,如下:
#!/bin/bash
######################################################################################
# this shell script is used to send mail automatically
# the root structure is
#      .
#      ./autosend.sh        -- this shell script
#      ./attach/            -- this folder stored mail's all attachment.
#      ./bak/               -- for backup
#      ./log/               -- send & unsend log files
#      ./mail/              -- mail text content, default file name './mail/mail.md'
#      ./readme.md          -- readme file (not mandatory)
# version: v0.1 @Aug. 4, 2013, by Guobao Jiang 
######################################################################################
cd /home/aborn/research/code/SalDef/mailRS
dateInfo="$(date +%Y-%m-%d-%H-%M-%S)"
attachName="attach_$dateInfo.tar.gz";
contentFile="./mail/mail.md"
toName="
[email protected]
" ccName="[email protected]" if [ -f ./mail/mail.md ]; then if [ ! -f ./log/send.log ];then touch ./log/send.log fi sendLog="./log/send.log" mkdir -p "./bak/mail_$dateInfo" fileno=`ls ./attach|wc -w` if [ $fileno -gt 0 ];then tar zcvf $attachName ./attach sleep 2 rm -rf ./attach/* cp $attachName "./bak/mail_$dateInfo" fi cp ./mail/mail.md "./bak/mail_$dateInfo" echo -e " " >>$contentFile echo -e "------------------" >> $contentFile echo -e "Note: This mail is automaticall by my server." >> $contentFile echo -e "BR// Guobao Jiang (
[email protected]
)" >> $contentFile echo -e "DateRecord: $dateInfo" >> $contentFile echo -e " " >>"$sendLog" echo -e "-----------------------------------" >>"$sendLog" echo -e "Sending mail..." >>"$sendLog" if [ -f $attachName ];then mutt -s "Update Experiments Result $dateInfo" -c $ccName $toName \ -a $attachName< "$contentFile" echo "has attachments." >> "$sendLog" else mutt -s "Update Experiments Result $dateInfo" -c $ccName $toName \ < "$contentFile" echo "no attachments." >> "$sendLog" fi if [ $? -eq 0 ]; then rm -rf $attachName rm -rf ./mail/mail.md #rm -rf ./attach/* # if success, delete all attachment files. echo -e "mail was sent to $toName and cc to $ccName successully!" >> \ "$sendLog" else rm -rf $attachName rm -rf "./bak/mail_$dateInfo" echo -e "mail sent failed! Please try again!" >>"$sendLog" fi echo -e "RecordTime:$dateInfo" >>"$sendLog" else if [ ! -f ./log/record.log ]; then touch ./log/nosend.log fi echo -e "No mail contents to send! RecordTime: $dateInfo" >>./log/nosend.log fi



注意0: 檔案autosend.sh,新增可執行屬性

chmod u+x autosend.sh

注意1:附近 -a $attachName 放在最後,不然會出現如下錯誤:

Can’t stat [email protected]: No such file or directory
[email protected]: unable to attach file.

注意2:我的郵件內容是放在./mail/mail.md檔案裡的,傳送完會備註到./bak下並刪除原來的檔案。

目錄結構如下:


參考連結:點選

相關推薦

Ubuntu Linux自動郵件配置郵件傳送指令碼

測試環境:Ubuntu 11.10 1. 安裝mutt及msmtp軟體 sudo apt-get install mutt sudo apt-get install msmtp 2. 編輯配置檔案vi ~/.muttrc set sendmail="/usr/bin/

Jenkins自動傳送郵件配置定時構建

前言 在配置之前,我們需要安裝好Jenkins,對於如何安裝不在贅述,看我之前一篇安裝教程(或者找度娘,教程很多)。接下來我們開始詳細講解build執行完成後自動傳送郵件和定時自動構建build 系統配置 安裝外掛 我們在安裝Jenkins的時候可以選擇安裝,也可以在安裝之後選擇安裝需要的外掛 1.

kvm安裝salt-minion安裝到部署tomcat以及jenkins自動配置新增

首先部署新機安裝環境 1 yum -y install qemu-kvm libvirt python-virtinst bridge-utils lrzsz openssh-devel bind-utils 2 lsmod | grep kvm 4 /etc/init.d/libvirtd

jprofiler+Linux+weblogic功能簡介,配置內存泄漏分析示例

客戶 cat color 筆記 自定義 r+ htm his 統計 jprofiler簡介: jprofiler的內存視圖部分可以提供動態的內存使用狀況更新視圖和顯示關於內存分配狀況信息的視圖。所有的視圖都有幾個聚集層並且能夠顯示現有存在的對象和作為垃圾回收的對象。 一、主

Linux服務器SVN配置管理項目遷移

配置連接 config aaa 資源 修改配置 directory 完成後 provide 系統 前言:本文章根據有些公司對於項目管理,所以有些公司對於SVN使用有些挑剔,有些會使用GIT或者Github等等,這不我們公司使用的就是SVN,技術老大說要把Windows系統上

linux下git安裝配置使用

環境:ubuntu 16.04.05 git安裝(ubuntu) sudo apt-get install git git使用 第一次使用git庫需要使用git clone ‘遠端地址’,將程式碼克隆到本地   設定全域性的郵件和使用者名稱 git conf

Ubuntu Linux DNS伺服器 BIND9配置檔案命令介紹

BIND9配置方法 轉載▼     配置語法 named.conf acl 定義訪問控制列表 controls 定義rndc命令使用的控制

第二十章linux~dns的配置解析

DNS的基本配置 1 .DNS(域名伺服器) DNS(Domain Name Server,域名伺服器)是進行域名和與之對應的IP地址轉化的伺服器。DNS中儲存了一張域名和與之對應的IP地址的表,以解析訊息的域名。 2.DNS快取記憶體的作用 當某一個訪問請求解

Mybatis使用Generator自動生成器的配置使用

使用的是IDEA,spring boot.maven. 首先在 pop.xml 中匯入依賴 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId&g

Linux系統中vsftpd配置如何新增vsFTPd使用者和設定許可權

/etc/vsftpd/vsftpd.conf 本身就是一個挺詳細的配置檔案,且使用『 man 5 vsftpd.conf 』則可以得到完整的引數說明。與主機較相關的設定值 connect_from_port_20=YES (NO) ftp-data 的埠; listen_port=21 vsftpd 使用的

linux vim編輯器配置使用經驗

剛安裝的VIM,可能介面並不是十分友好,這就需要我們去更改vim的配置檔案,按照我們的需求去修改它。 在命令列下,輸入命令:sudo vim /etc/vim/vimrc 必須加上sudo,否則你是沒有許可權編輯vimrc的。 syntax on 這一句,

使用Jenkins郵件配置郵件中輸出測試執行詳細結果

Jenkins的郵件配置還是比較人性化的,提供了很多令牌供使用者獲取特定的內容並輸出。如:  •     ${BUILD_NUMBER} -顯示當前構建的編號。 •     ${BUILD_STATUS} -顯示當前構建的狀態(失敗、成功等等) •     ${BUILD_

Linux hostname主機名配置修改

這篇文章為大家介紹linux hostname主機名配置檔案/etc/hosts,包括主機名的用途、配置檔案的操作方法及修改主機名的步驟等,有需要的朋友,可以參考下 1. 什麼是Linux主機名 無論在區域網還是INTERNET上,每臺主機都有一個I

linux下的openssl配置糾錯

因工程中需要用到https伺服器證書來進行驗證。需要用到openssl三方庫來進行解析。 (1)首先下載openssl,地址是https://www.openssl.org/source/;然後解壓後進入openssl-1.1.0e該目錄下,進行編譯./config,然後m

Linux-NFS服務的配置使用

NFS 就是 Network FileSystem 的縮寫, 它最大的功能就是可以透過網路,讓不同的機器、不同的作業系統、可以彼此分享個別的檔案 (share files)。所以,你也可以簡單的將他看做是一個檔案伺服器。安裝NFS伺服器[[email protect

LINUX下NFS的配置應用(3.0)

客戶端配置1.linux客戶端的使用(1)建立共享目錄為了更好地說明客戶端的配置使用,先重新建立兩個共享目錄。修改/etc/exports如下vi /etc/exports/media * (ro)/file * (rw)(2)重新啟動伺服器service nfs resta

電子郵件協議GO傳送QQ郵件

[TOC] ### 一、電子郵件的工作機制 ![image-20200531204042406](https://img2020.cnblogs.com/blog/1496926/202005/1496926-20200531224213873-879729387.png) 提供電子郵件服務的協議叫

Linux自動向指定用戶郵件

mailLinux自動向指定用戶發送郵件 實現Linux向用戶發送指定主題和指定內容的郵件,可以用mailx軟件,mailx是UNIX系統上用來處理郵件的工具,使用它可以發送,讀取郵件。一、安裝mailx[[email protected] ~]# yun -y install mailx二、

jenkins配置自動郵件

nib ipo svm awl nom oge cso rfc qam 1.開通QQ的SMTP服務,需要發一條短信,qq會給你一個密碼(不是你的QQ郵箱密碼哦) https://jingyan.baidu.com/album/4b07be3cb2f74148b380f3e4

添加自定義監控項目、配置郵件告警郵件的問題處理

use zab text 恢復操作 觸發 mod 授權碼 觸發器 trigge 一、添加自定義監控項目 需求:監控某臺web的80端口連接數,並出圖兩步:1)zabbix監控中心創建監控項目;2)針對該監控項目以圖形展現對於第一步,需要到客戶端定義腳本vim /usr/lo