Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Matlab和终端运行时,bash脚本的执行不同_Matlab_Ubuntu - Fatal编程技术网

从Matlab和终端运行时,bash脚本的执行不同

从Matlab和终端运行时,bash脚本的执行不同,matlab,ubuntu,Matlab,Ubuntu,我有一个bash脚本,我想在Ubuntu 14.04的Matlab2014b中执行它。当我从终端启动它时(我从操作系统启动),一切都正常。我试着像这样从Matlab启动它 !./script.sh 它执行,但无法打开必须加载的图像文件。 如果我从Matlab启动terminal window,情况会更糟 !./gnome-terminal 然后用它来启动脚本我遇到了同样的“未找到文件”问题。可以毫无问题地访问文本文件。图像的路径是全局的。要加载图像,请使用opencv库。我的猜测是,由于某种

我有一个bash脚本,我想在Ubuntu 14.04的Matlab2014b中执行它。当我从终端启动它时(我从操作系统启动),一切都正常。我试着像这样从Matlab启动它

!./script.sh
它执行,但无法打开必须加载的图像文件。 如果我从Matlab启动terminal window,情况会更糟

!./gnome-terminal
然后用它来启动脚本我遇到了同样的“未找到文件”问题。可以毫无问题地访问文本文件。图像的路径是全局的。要加载图像,请使用opencv库。我的猜测是,由于某种原因,opencv的工作原理与Matlab不同,但我不知道该怎么做


我花了很多时间来解决这个问题,但仍然无法解决它。我将非常感谢您的建议和帮助。

LD_LIBRARY_Matlab shell的路径与teminal shell的路径不同。Matlab中的以下命令:

setenv('LD_LIBRARY_PATH', <content of LD_LIBRARY_PATH from terminal>)

MatlabShell的LD_库_路径与teminal shell的不同。Matlab中的以下命令:

setenv('LD_LIBRARY_PATH', <content of LD_LIBRARY_PATH from terminal>)

您是否对图像文件使用绝对路径?可能您在错误的目录中Matlab外壳不一定与您的终端外壳相同。检查以确保
.profile
.bashrc
中的所有必需选项均未丢失。例如路径或别名。谢谢你,马特!我无法通过查看.profile和.bashrc来找出问题所在,但我比较了两个终端(Matlab和Ubuntu)的环境变量,发现它们有很大不同。我设置了环境(“LD_LIBRARY_PATH”);现在它工作了!您是否对图像文件使用绝对路径?可能您在错误的目录中Matlab外壳不一定与您的终端外壳相同。检查以确保
.profile
.bashrc
中的所有必需选项均未丢失。例如路径或别名。谢谢你,马特!我无法通过查看.profile和.bashrc来找出问题所在,但我比较了两个终端(Matlab和Ubuntu)的环境变量,发现它们有很大不同。我设置了环境(“LD_LIBRARY_PATH”);现在它工作了!