Azzera filtri
Azzera filtri

Why doesn't cd command work on parametric directory names ?

1 visualizzazione (ultimi 30 giorni)
Hi All
I need to change between some subfolders under the main folder during my code inside a loop.
The strange thing is that when I write the directory name explicitly :
cd 'E:\MATLABfile\Main\subdirect'
It works smoothly
but If I do :
main= 'E:\MATLABfile\Main'
sub= strcat(main,'\subdirect')
and then when I am on the main folder , if I do :
cd sub
I get the error :
Error using cd
Cannot CD to sub (Name is nonexistent or not a directory).
How can I resolve it ?
  1 Commento
Stephen23
Stephen23 il 13 Mar 2020
"I need to change between some subfolders under the main folder during my code inside a loop."
Most likely you don't need to change directories.
Changing directories is slow (it forces MATLAB to analyze all of the files in the new folder), makes debugging harder, and is completely unnessesary for reading/writing data files. All MATLAB functions that read/write data files accept absolute/relative filenames (which are more efficient). In general you should not change directories just to access data files.

Accedi per commentare.

Risposta accettata

Stephen23
Stephen23 il 13 Mar 2020
Modificato: Stephen23 il 13 Mar 2020
"How can I resolve it ?"
Use function syntax (not command syntax):
cd(sub)

Più risposte (0)

Categorie

Scopri di più su Search Path in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by