Run MATLAB script and pass variables in Linux terminal
19 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello,
I'm trying to run a script file "test.m" from Linux terminal that does the following :
AllFiles = dir(FilePath)
I want to declare FilePath in matlab workspace before calling the script.
I'm using the following line of code but Matlab reporting error : undefined FilePath!
matlab -nodisplay -nosplash -nodesktop -r "FilePath='data';test; exit;"
I also tried using function to pass variable as argument but my paths have spaces and I can't change that, this results for some confusing between linux and matlab path rules !
My function is
function testfcn(FilePath)
FilePath
AllFiles = dir(FilePath)
end
matlab -nodisplay -nosplash -nodesktop -r "testfcn('slprj/New Folder/');exit;"
When I have no space in my path things works but not when path contain space. I tried adding \ before the space caractere, enclose the whole path by ".
Any idea on how to overcome this issue ?
0 commentaires
Réponse acceptée
Bhargavi Maganuru
le 17 Fév 2020
For example if your function is
function test(FilePath)
AllFiles = dir(FilePath);
end
You can call the function using following command
matlab -nodisplay -nosplash -nodesktop -r "test(data)" % where data is the name of the folder
This command also works when there is space in the name of the folder.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Startup and Shutdown dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!