近期,在服務器上運行matlab程序,因爲數據比較多,程序比較複雜,運行時間不固定,並且須要常常改變參數,重複運行幾回,因此不清楚程序什麼時候結束,以便於修改參數,繼續運行。開始有時間就看看程序是否運行結束,次數多了後,就感受分心,很不方便。html
爲了在第一時間知道程序運行結束,就想到了讓matlab在運行結束後,馬上通知我,這樣就方便我馬上修改參數,繼續運行。通過思考,百度或者google,嘗試,這裏介紹兩種可行的方法:發送短信和發送有郵件。java
因爲之前有過在電腦上向手機發送短信的編程實現,因此在回顧本身的文章《 C#簡單實現發送手機短信 》,再結合matlab中web的使用,實現了用中國網建提供的SMS短信平臺發送短信,就像我在本身文章提到的同樣,用完幾條免費的後,就要收費了。(順便提一句,網上找到用開放飛信平臺的API發送的,可是如今好像不能用了,不知道Why。)程序員
用基於SMS平臺發送短信,很是簡單,一句命令的事,能夠直接加在代碼的最後:web
web http://utf8.sms.webchinese.cn/?Uid=本站用戶名&Key=接口安全密碼&smsMob=手機號碼&smsText=短信內容
得先註冊網建,而後按上面的修改就能夠了。編程
若是感受發送短信,太麻煩,須要註冊之類的,能夠選擇發送郵件。像網易郵件,gmail郵件等,均可以。安全
在使用郵件以前,首先要設置郵箱,開啓stmp和pop3服務器。例以下列圖片:服務器
而後,在matlab命令窗口(command window),輸入: doc sendmail,函數介紹以下:函數
MailAddress = 'XXXXXXXX@126.com';%手機郵箱地址 password = 'XXXX'; %密碼 setpref('Internet','E_mail',MailAddress);%照抄吧 setpref('Internet','SMTP_Server','smtp.126.com');%SMTP服務器 setpref('Internet','SMTP_Username',MailAddress);%照抄 setpref('Internet','SMTP_Password',password);%照抄 props = java.lang.System.getProperties;%照抄 props.setProperty('mail.smtp.auth','true');%照抄 sendmail(MailAddress,subject,content);%提醒的是本身,直接用本身的手機郵箱 subject和content就是郵件的主題和內容,發過E-mail的都知道吧。
爲了之後方便使用,能夠包裝成一個函數:post
function mailTome(subject,content) MailAddress = 'XXXXXX@126.com'; password = 'X'; setpref('Internet','E_mail',MailAddress); setpref('Internet','SMTP_Server','smtp.126.com'); setpref('Internet','SMTP_Username',MailAddress); setpref('Internet','SMTP_Password',password); props = java.lang.System.getProperties; props.setProperty('mail.smtp.auth','true'); sendmail('X',subject,content);
end
獲得mail2me這個函數以後,只要在程序後面加上一句相似的: google
mailTome('Program Over','**** Program has finished');
真的沒有問題了麼?程序員的思想老是接近完備的。
函數中存在我的隱私(手機號碼和密碼),若是被人看到而後用來捉弄你就很差了。 MATLAB也是完備的,她提供了一種很好的內容保護機制: protected-code。
Command Window 鍵入:
pcode mailTome
而後刪除mail2me.m。在此以後,再次輸入:
mailTome('Is OK?','見證奇蹟的時刻到了');
今後,不再會有第二我的知道你這個函數裏面的內容了.
第二種方法來自於網上的查找。