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

7 vues (au cours des 30 derniers jours)
Chris E.
Chris E. le 12 Nov 2012
Modifié(e) : per isakson le 16 Fév 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 commentaire
Jan
Jan le 13 Nov 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.

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 12 Nov 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)
  1 commentaire
Chris E.
Chris E. le 12 Nov 2012
Thank you this worked! Chris

Connectez-vous pour commenter.

Plus de réponses (1)

Matt Fig
Matt Fig le 12 Nov 2012
Modifié(e) : Matt Fig le 12 Nov 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')

Catégories

En savoir plus sur Function Creation 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!

Translated by