/bin/bash:从 Matlab 运行 shell 脚本时没有这样的文件或目录
Posted
技术标签:
【中文标题】/bin/bash:从 Matlab 运行 shell 脚本时没有这样的文件或目录【英文标题】:/bin/bash: No such file or directory when running a shell script from Matlab 【发布时间】:2018-04-20 13:31:56 【问题描述】:我正在 Windows 10 中创建一个 Matlab 代码,该代码又使用 Ubuntu 环境(在 Windows 10 内)执行一些混合 Matlab 和 OpenFOAM 的计算。 我总结一下,我所做的是我有一个 Matlab 代码,它在某些时候在我的 ubuntu 环境中调用一个 shell 脚本函数,这个函数执行我在 ubuntu 上需要的一切。如果我在 ubuntu 环境中测试该 .sh 文件,它可以完美运行,但是当我从 Matlab(在 Windows 10 上)调用它时,它就不起作用了。 在 Matlab 中,我的调用是这样完成的: system('bash -c "******.sh"'); 我收到以下错误 /bin/bash: ******.sh: 没有这样的文件或目录 即使文件存在。 有什么线索吗?
【问题讨论】:
请添加您的代码和错误,以便我们看到您在做什么。第二:听起来像是 MATLAB 无法处理的权限错误。 matlab进程的当前目录和文件所在的目录一样吗?您可能想尝试 shell 脚本的绝对路径,看看是否是原因。 OpenFOAM 也有 Windows 版本。有什么特别的理由不使用它吗?能解决你的问题吗? 任何反馈,如果可能的话?否则,我建议您删除该问题。 【参考方案1】:对不起,我出国了,但昨天我能够解决问题。 以这种方式使用这两种软件的原因是我需要 OpenFOAM 在其本机配置中工作。 也就是说,我的问题似乎是由于 windows 允许您同时安装 bash 和 Ubuntu,所以当我要求 Matlab 执行系统时('bash -c "******. sh"') 它尝试使用 bash,而我在 Ubuntu 上安装了所有东西。所以解决方案就是删除我的 Windows10 安装的 bash。
【讨论】:
以上是关于/bin/bash:从 Matlab 运行 shell 脚本时没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章