Вы можете убедиться, что имена файлов заключены в кавычки, используя действие -printf
для find
:
TestsPath=$(find . -path "Tests" -printf "'%p' ")
. Это вернет
'a/b/Tests/' 'b/c/Tests/' 'c/d/Tests/'
, что нормально дляподставьте в синтаксис команды MATLAB синтаксис вызов функции, как предложено Alex :
matlab -nosplash -nodesktop -r "RunAllTests ${TestsPath};"
Обратите внимание, что эти кавычки необходимы, если в именах каталогов есть пробелы.
Обратите внимание, что после MATLAB R2019b -r
устарела в пользу новой опции командной строки -batch
:
matlab -batch "RunAllTests ${TestsPath};"
Это работает одинаково на всех платформах (включая Windows!).