尝试了好几遍,仍然不能用简写命令调用matlab,这里把过程记录如下。

(1). 登录 server

[She@She ~]$ ssh shecl@xx.xx.xx.xx
Last login: Mon Aug :: 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@ ~]$ echo $
-bash [shecl@ ~]$ pwd
/home/shecl [shecl@ ~]$ echo $PATH
/opt/pgi/linux86-/10.6/bin:/usr/lib64/qt-3.3/bin:/usr/lib64/openmpi/bin/:/usr/lib64/mpich/bin/:/opt/pgi/linux86-/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@ ~]$ which matlab
alias matlab='/usr/local/MATLAB/R2015b/bin/matlab'
/usr/local/MATLAB/R2015b/bin/matlab [shecl@ ~]$ 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@ ~]$ cat script.m
disp(['This demo for matlab ',datestr(now,'yyyy-mm-dd HH:MM:SS')]);
disp('Time of 127s pause');
pause();
disp(['Time is out on ',datestr(now,'yyyy-mm-dd HH:MM:SS')]);

(5). 以绝对路径的方式后台调用 matlab,成功。结果如下:

[shecl@ ~]$ nohup /usr/local/MATLAB/R2015b/bin/matlab -nojvm -nodisplay -nosplash -nodesktop < script.m >running.log >running.err &
[] >> [shecl@ ~]$ cat running.log < M A T L A B (R) >
Copyright - The MathWorks, Inc.
R2015b (8.6.0.267246) -bit (glnxa64)
August , For online documentation, see http://www.mathworks.com/support
For product information, visit www.mathworks.com. >> This demo for matlab -- ::
>> Time of 127s pause
>> >> Time is out on -- ::
>> >> []+ Done nohup /usr/local/MATLAB/R2015b/bin/matlab -nojvm -nodisplay -nosplash -nodesktop < script.m > running.log > running.err

(6). 以简写命令的方式后台调用 matlab,失败。结果如下:

[shecl@ ~]$ nohup matlab -nojvm -nodisplay -nosplash -nodesktop < script.m >running.log >running.err &
[]
[shecl@ ~]$ cat running.log matlab: No MATLAB bin directory for this machine architecture. ARCH = glnxa64 []+ Exit nohup matlab -nojvm -nodisplay -nosplash -nodesktop < script.m > running.log > 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 &   # 调用成功
[shecl@192 ~]$ nohup matlab                              -nojvm -nodisplay -nosplash -nodesktop < script.m 1>running.log 2>running.err &   # 调用失败

(8). 修复建议,因权限问题,未解决

可以用创建软链接 (ln -s) 的方式修复这个 bug,但是,没有权限来执行该操作。其原因可能是远程登录时限制了权限,需要在主机上操作;也可能是该用户名未分配该权限,需要切换到超级管理员。为安全起见,不建议使用超级管理员远程登录服务器。

[shecl@ ~]$ 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.

记录完毕。

[CentOS Server] Bug when calling matlab in bash的更多相关文章

  1. centOS 6.7 中安装matlab R2014b

    参考资料: [1] http://www.centoscn.com/image-text/config/2014/1222/4354.html 系统: centOS 6.7 2.6.32-573.el ...

  2. How To install FFMPEG, FLVTOOL2, MP4Box on CentOS server 2015 easy method

    for i386:wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpmrpm ...

  3. centos没有service命令的恢复方法(-bash: service: command not found)

    转载自:https://blog.csdn.net/u014175572/article/details/53375049?utm_source=itdadao&utm_medium=refe ...

  4. ubuntu(centos) server安装vmware tools

    Ubuntu: root登录ubutun $ sudo su vmware中选择菜单虚拟机->安装VMware Tools 命令行如下 // 将cdrom挂载到mnt $ mount -t is ...

  5. Calling Matlab function from python: “initializer must be a rectangular nested sequence”

    I am writing a python script from which I hope to call the Matlab anovan function. I have attempted ...

  6. Unable to VNC onto Centos server remotely

    用的好好的vncserver 突然遇到这个错误: [vnc@localhost ~]$ sudo systemctl status vncserver@:1.service -l● vncserver ...

  7. CentOS Bash 命令补全增强软件包 bash-completion

    引言 之前安装的 CentOS 7 是最小化安装,在使用 systemctl 命令进行服务的管理时,经常手动输入相关服务名.如果对一个服务名称不熟悉,这样可以迫使我们记住它,但如果对一个服务名已经很熟 ...

  8. VNC Server Installation on CentOS 6.5

    In my case I have a fresh installed CentOS6.5 Server on which I will be installing the VNC-server so ...

  9. CentOS Linux修改默认Bash shell为Zsh shell

    Shell是在程序员与服务器间建立一个桥梁,它对外提供一系列命令,让我们得以控制服务器.常用的Bash就是Shell的一种,也是Linux下默认Shell程序.这里介绍一种更强大的.更人性化的Shel ...

随机推荐

  1. HDU5795A Simple Nim SG定理

    A Simple Nim Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tota ...

  2. 渗透杂记-2013-07-13 关于SMB版本的扫描

    smb2的溢出,其实在metasploit里面有两个扫描器可以用,效果都差不多,只是一个判断的更加详细,一个只是粗略的判断. Welcome to the Metasploit Web Console ...

  3. BASH比较大小

  4. Github上关于iOS的各种开源项目集合(强烈建议大家收藏,查看,总有一款你需要)

    下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITableVie ...

  5. iOS常见面试题

    一.为什么要在主线程中更新UI,这样做有什么好处? UIKit中的大部分类都不是“线程安全”的,为了解决这个线程不安全的问题,苹果推荐所有应用程序的UI操作都在主线程中执行,这样就不会出现多个线程同时 ...

  6. Python虚拟开发环境

    最近,一直在不同版本的Python之间来回折腾,发现了几个Python虚拟开发环境工具,具体如下: 1. Virtualenv,可以指定开发环境的Python版本.继承已有开发环境配置,virtual ...

  7. EX14 彩票中奖 (lottery.pas/c/cpp)

    [题目描述]小明想试试运气去购买彩票,所以他开始研究彩票大乐透的玩法:超级大乐透是指由购买者从01—35共35个号码中选取5个号码为前区号码,并从01—12共12个号码中选取2个号码为后区号码组合为一 ...

  8. 关于 OJ1574的参考题解(较麻烦)

    #include <stdio.h>int main(){ long a,b,c,d,e; scanf("%ld",&a); d=a; b=0; while(d ...

  9. XMPP环境搭建

    搭建XMPP环境需要几个辅助工具 1.XAMPP     XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建 XAMPP 软件站集成软件包.     许多人通过他们自己的经验认 ...

  10. FMDB

    一.FMDB简介 1.FMDB简介 iOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较繁琐.于是,就出现了一系列将SQLite API进行封装的库,例如FMDB. ...