Matlab无法识别用户环境变量

weylhg0b  于 2022-12-13  发布在  Matlab
关注(0)|答案(1)|浏览(299)

我在以下路径中安装了名为lqns的应用程序:/home/robb/Research/dist/lqns-6.2/lqnslqns是一个包含可执行文件lqns的文件夹)。我希望该程序在命令行中执行,只需在shell中调用lqns,我解决了这个问题,在文件~/.bashrc中添加以下行:

export PATH=$PATH:/home/robb/Research/dist/lqns-6.2/lqns

而且它工作起来没有问题。我现在正试图在Matlab脚本中执行这个程序,运行:

[status, ~] = system("lqns " + filename, '-echo');

其中filename是输入文件的路径。我得到错误消息:

/bin/bash: line 1: lqns: command not found

用shell运行完全相同的命令,我没有得到任何错误:程序运行时不会出现生成相关输出的问题。
在Matlab中运行getenv('PATH');,在我的OS shell中运行printenv PATH,我确实得到了两个不同的结果:Matlab没有lqns的路径,我甚至试着手动编辑/etc/environment/etc/bash.bashrc/root/.bashrc文件,都没有结果,怎么解决这个问题?

mrwjdhj3

mrwjdhj31#

你需要通过在终端中键入matlab来启动matlab,而不是通过在桌面上双击它的快捷方式。(或者甚至在桌面上的终端中键入./matlab
由操作系统来确定双击的作用,并且不能保证执行大多数shell初始化脚本(甚至不能保证从正确的shell启动它)。
更多信息请访问Why are environment variables not resolved when double-clicking .desktop file?

相关问题