I am trying to redirect the Command Window output to stdout and stderr when running MATLAB in batch mode. I found this link that answers my question: http://www.mathworks.com/support/solutions/en/data/1-ACT3YN/index.html?product=ML&solution=1-ACT3YN
However, after following the steps, I receive an error: ??? Undefined function or variable 'myFunction'. I don't understand why I am receiving this error, because the function is defined.
Here is my code:
@echo off
echo "running..."
mlcaller "cd 'C:\Documents and Settings\My Documents\folder';myFunction('file.dat','data.txt');"
echo "complete"
mcaller will, if I understand correctly, be a .exe that you would invoke, and you would not invoke MATLAB yourself. mcaller will start up MATLAB and run the named command "myFunction" (which is what your .m file would have to be named.)
Is myFunction.m in your current directory?
Experiment with
mcaller "which -all myFunction"
Note: when you finally do get it finding myFunction, you will need to pass the arguments in the mcaller invocation, such as
mcaller "myFunction('file.dat','data.txt')"
When I try mcaller "which -all myFunction" the error goes away, but now standard output says "'myFunction' not found." I am sure that it is in the correct directory.
0 Comments