'eval' works on one computer but not on the other....

4 visualizaciones (últimos 30 días)
Chris E.
Chris E. el 12 de Nov. de 2012
Editada: per isakson el 16 de Feb. de 2017
I have 2 computers, both with windows 7 and both with the 7.10.0 version of MATLAB, both have identical MATLAB programs I created.
I am using the "eval" function in MATLAB and evaluating a address of something like (both computers):
eval([cd C:\Users\Documents\Images\Scan1]);
One computer this works, but the on the other computer it does not work. The one computer that does not works says,
"Error using ==> cd
Too many input arguments."
The one that works does not have this issue at all and works fine, exactly as I intended. I'm really at a loss to enplane or fix why one works and the other does not when they are nearly identical operating systems, MATLAB versions and MATLAB programs. Please help! Thanks, Chris
  1 comentario
Jan
Jan el 13 de Nov. de 2012
@Chris: Please search in this forum for "eval". You will find hundreds of suggestions to avoid this function, because it causes more problems than it solves.

Iniciar sesión para comentar.

Respuesta aceptada

Matt J
Matt J el 12 de Nov. de 2012
Are there spaces in any of the directory names in the path you're cd-ing to? What happens when you just use cd without eval? In fact, why use eval at all? Why not just do
cd(mypath)

Más respuestas (1)

Matt Fig
Matt Fig el 12 de Nov. de 2012
Editada: Matt Fig el 12 de Nov. de 2012
On the computer where it does not work, do this:
which cd
See if someone has saved a script named cd that is masking the built-in function. And why are you using EVAL for this purpose anyway?? The command will work without putting it inside EVAL...
cd C:\Users
is the same as:
eval('cd C:\Users')

Categorías

Más información sobre Function Creation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by