在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
尝试了好几遍,仍然不能用简写命令调用matlab,这里把过程记录如下。 (1). 登录 server[She@She ~]$ ssh [email protected] Last login: Mon Aug 15 10:59:03 2016 from xx.xx.xx.xx -bash: module: command not found -bash: module: command not found -bash: setenv: command not found -bash: setenv: command not found bash: setenv: command not found...
(2). 有关 server 的 shell,环境变量等简单信息[shecl@192 ~]$ echo $0 -bash [shecl@192 ~]$ pwd /home/shecl [shecl@192 ~]$ echo $PATH /opt/pgi/linux86-64/10.6/bin:/usr/lib64/qt-3.3/bin:/usr/lib64/openmpi/bin/:/usr/lib64/mpich/bin/:/opt/pgi/linux86-64/10.6/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/shecl/.local/bin:/home/shecl/bin:/usr/local/MATLAB/R2015b/bin:/usr/local/MATLAB/R2015b/bin/glnxa64 [shecl@192 ~]$ which matlab alias matlab='/usr/local/MATLAB/R2015b/bin/matlab' /usr/local/MATLAB/R2015b/bin/matlab [shecl@192 ~]$ alias alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l.='ls -d .* --color=auto' alias ll='ls -l --color=auto' alias ls='ls --color=auto' alias matlab='/usr/local/MATLAB/R2015b/bin/matlab' alias mpirun='mpirun -x LD_PRELOAD=libmpi.so' alias ncdump='/opt/netcdf/bin/ncdump' alias opendir='nautilus' alias openpdf='xdg-open' alias vi='vim' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
(3). 以简写命令的方式前台调用 matlab,成功。结果如下:[shecl@192 ~]$ matlab
MATLAB is selecting SOFTWARE OPENGL rendering.
< M A T L A B (R) >
Copyright 1984-2015 The MathWorks, Inc.
R2015b (8.6.0.267246) 64-bit (glnxa64)
August 20, 2015
To get started, type one of these: helpwin, helpdesk, or demo.
For product information, visit www.mathworks.com.
>> datevec(now)
ans =
1.0e+03 *
2.0160 0.0080 0.0150 0.0170 0.0110 0.0030
>> exit
(4). 测试用的 matlab 脚本: script.m[shecl@192 ~]$ cat script.m disp(['This demo for matlab ',datestr(now,'yyyy-mm-dd HH:MM:SS')]); disp('Time of 127s pause'); pause(127); disp(['Time is out on ',datestr(now,'yyyy-mm-dd HH:MM:SS')]);
(5). 以绝对路径的方式后台调用 matlab,成功。结果如下:[shecl@192 ~]$ nohup /usr/local/MATLAB/R2015b/bin/matlab -nojvm -nodisplay -nosplash -nodesktop < script.m 1>running.log 2>running.err & [1] 41182>> [shecl@192 ~]$ cat running.log < M A T L A B (R) > Copyright 1984-2015 The MathWorks, Inc. R2015b (8.6.0.267246) 64-bit (glnxa64) August 20, 2015 For online documentation, see http://www.mathworks.com/support For product information, visit www.mathworks.com. >> This demo for matlab 2016-08-15 11:37:25 >> Time of 127s pause >> >> Time is out on 2016-08-15 11:39:32 >> >> [1]+ Done nohup /usr/local/MATLAB/R2015b/bin/matlab -nojvm -nodisplay -nosplash -nodesktop < script.m > running.log 2> running.err
(6). 以简写命令的方式后台调用 matlab,失败。结果如下:[shecl@192 ~]$ nohup matlab -nojvm -nodisplay -nosplash -nodesktop < script.m 1>running.log 2>running.err & [1] 41076 [shecl@192 ~]$ cat running.log matlab: No MATLAB bin directory for this machine architecture. ARCH = glnxa64 [1]+ Exit 1 nohup matlab -nojvm -nodisplay -nosplash -nodesktop < script.m > running.log 2> running.err
(7). bug 描述[shecl@192 ~]$ nohup /usr/local/MATLAB/R2015b/bin/matlab -nojvm -nodisplay -nosplash -nodesktop < script.m 1>running.log 2>running.err & # 调用成功
(8). 修复建议,因权限问题,未解决可以用创建软链接 (ln -s) 的方式修复这个 bug,但是,没有权限来执行该操作。其原因可能是远程登录时限制了权限,需要在主机上操作;也可能是该用户名未分配该权限,需要切换到超级管理员。为安全起见,不建议使用超级管理员远程登录服务器。 [shecl@192 ~]$ sudo ln -s /usr/local/MATLAB/R2015b/bin/matlab /usr/local/bin/matlab [sudo] password for shecl: Sorry, user shecl is not allowed to execute '/bin/ln -s /usr/local/MATLAB/R2015b/bin/matlab /usr/local/bin/matlab' as root on 192.168.0.45.
记录完毕。
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论