最近想给公司的服务器安装一个 Matlab 试一下, 因此写这篇博客把主要过程记录下来。
我是通过 xshell 远程连接的服务器, 然后通过 xftp 新建了一个 Softwares 文件夹, 并通过 xftp 把 Matlab 的镜像文件上传到了服务器上,也就是在 Softwares 文件夹里面,文件名是 R2014b_glnxa64_withcrack.iso. 之后就可以开始安装了.
" hljs bash">sudo /usr/local/MATLAB/R2014b/bin/matlab
激活之后执行启动命令就成功了,但是为了启动的方便,我们需要添加环境变量,即打开 /etc/profile 文件,添加以下语句即可。
" hljs ruby">export PATH=$PATH:/usr/local/MATLAB/R2014b/bin
然后输入matlab就可以启动了。
这里直接上个图
值得注意的是,在哪个目录启动的Matlab,那么启动后的默认工作目录就在哪里。
启动后,直接输入命令或者程序名就可以运行程序了
如果想退出,直接输入 quit 就可以了,其实跟普通平台是一样的。
如果想在命令行里直接执行脚本的话,比如上面的简单求和脚本,如下
n = 10000;
tic % 程序计时开始
s = 0;
i = 0;
for i = 1:n
s = s + i;
end
t = toc; %程序计时结束
disp(['1到', num2str(n), '的累加和为: ', num2str(s)]);
disp(['求解所用的时间为', num2str(t), 's']);
quit()
matlab -r simplesum
其中 simplesum 是程序文件名,同样不需要加 .m 后缀。
% 简单求和程序
% 需要传递参数 n
tic % 程序计时开始
s = 0;
i = 0;
for i = 1:n
s = s + i;
end
t = toc; %程序计时结束
disp(['1到', num2str(n), '的累加和为: ', num2str(s)]);
disp(['求解所用的时间为', num2str(t), 's']);
quit()然后执行如下语句即可
matlab -r "n = 100; simplesum"
nohup matlab -r simplesum &
如果有输出,输出结果会存到 nohup.out 文件中,比如上面的输出就是
可以看到,这与在后台执行 Python 和 R 脚本是几乎一模一样的。
至于如何像 Python 和 R 那样, 让Matlab 程序执行结束后自动给我们发一个带程序运行结果的邮件,有时间我会研究一下并更新。
下面更新一下如何发送邮件,其实网上资料很多,以163邮箱为例,我最终参考的模板如下
% 发送邮件
MyMailAddress = '*********@'; % 发送邮件所用的邮箱的地址
MyPassword = '****************'; % 发送邮箱的密码
setpref('Internet','E_mail',MyMailAddress);
setpref;
setpref('Internet','SMTP_Username',MyMailAddress);
setpref('Internet','SMTP_Password',MyPassword);
props = java.lang.System.getProperties;
props.setProperty('mail.smtp.auth','true');
subject = '***程序执行状态报告'; % 发送的邮件主题
content = 'Hello, 您的程序已经运行结束,运行结果可见附件'; % 发送的邮件内容
sendmail % 设置需要接收的邮箱及主题、内容、附件等
% disp('Succesfull');
quit()