У меня есть скрипт bash, и я хочу выполнить его из Matlab 2014b в Ubuntu 14.04. Когда я запускаю его с терминала (я начинаю с os), все в порядке. Я пытаюсь запустить его из Matlab следующим образом:Выполнение скрипта bash отличается при запуске из Matlab и Terminal
!./script.sh
Он выполняет, но не может открыть файлы изображений, которые необходимо загрузить. Более того, если я запускаю окно терминала с Matlab
!./gnome-terminal
и использовать его, чтобы запустить сценарий, я получил тот же «файл не найден» проблемы. Доступ к текстовым файлам без проблем. Путь к изображениям глобальный. Для загрузки изображений используется opencv library. Я предполагаю, что по какой-то причине opencv отличается от Matlab, но я не знаю, что делать.
Я трачу много времени на выяснение проблемы, но до сих пор не могу ее решить. Буду признателен за любые рекомендации или помощь.
Вы используете абсолютные пути для файлов изображений? Возможно, вы находитесь в неправильном каталоге. – dasdingonesin
. Оболочка Matlab не обязательно является той же оболочкой, что и оболочка вашего терминала. Убедитесь, что никаких необходимых параметров из '.profile' или' .bashrc' не хватает. Например, путь или псевдоним. – Matt
Спасибо, Мэтт! Я не смог понять проблему, посмотрев в .profile и .bashrc, но я сравнивал переменные среды из 2 терминалов (Matlab и Ubuntu) и обнаружил, что они сильно отличаются. Я сделал setenv ('LD_LIBRARY_PATH', <содержимое LD_LBIBRARY_PATH с терминала Ubuntu>); И теперь это работает! –