虚拟机ubuntu16.04系统中matlab的getenv函数显示的环境变量与系统的环境变量结果不一致,为什么?如何使一致?

我用matlab打开一个依赖FSL的工具PANDA的时候,提示我没有装fsl,但实际上我已经装了。于是查看了PANDA.m,发现里面有一行函数这么写:

FSLDIR = getenv(‘FSLDIR’)

查了下getenv函数是返回环境变量的意思,但是我在matlab下输入getenv(‘FSLDIR’)得到的是一个空值;而我在linux终端输入echo $FSLDIR命令后,得到的FSLDIR结果是/usr/local/fsl。然后顺便测试了下其他的,在matlab下,getenv('LOGNAME')返回值是root,而linux终端env命令得到的LOGNAME是home目录下的用户名。
这是怎么回事?

【版本信息】
虚拟机VMware16,Ubuntu16.04
matlab版本为R2018a,所在路径:/usr/local/MATLAB/R2018a/bin/matlab(不过在linux终端输which matlab时没返回结果)
fsl所在路径/usr/local/fsl/bin/fsl(该结果为linux终端输which fsl的返回结果;输入echo $FSLDIR返回值为/usr/local/fsl),fsl版本为6.0
如果还缺其他信息也说一声,我补充上

那你把

FSLDIR='/usr/share/fsl/5.0'

放到你的matlab的PANDA.m中去试一试
有可能是你的matlab没法调用系统命令,同样的LOGNAME也这样改;PS:改了之后原先的代码注释掉放着