Filter löschen
Filter löschen

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

1 Ansicht (letzte 30 Tage)
farzad
farzad am 13 Mär. 2020
Kommentiert: Stephen23 am 13 Mär. 2020
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 Kommentar
Stephen23
Stephen23 am 13 Mär. 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.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Stephen23
Stephen23 am 13 Mär. 2020
Bearbeitet: Stephen23 am 13 Mär. 2020
"How can I resolve it ?"
Use function syntax (not command syntax):
cd(sub)

Weitere Antworten (0)

Kategorien

Mehr zu Search Path finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by