八行错误文件名在行x列y附近未定义

时间:2013-10-31 09:11:26

标签: octave

我正在尝试运行工作目录中的Octave文件,但是我收到错误。 Octave似乎没有意识到它应该运行该文件。

unknown@unknown> dir
.                       ex1data1.txt            plotData.m
..                      ex1data2.txt            submit.m
computeCost.m           featureNormalize.m      submitWeb.m
computeCostMulti.m      gradientDescent.m       warmUpExercise.m
ex1.m                   gradientDescentMulti.m
ex1_multi.m             normalEqn.m

unknown@unknown> ex1
error: `ex1' undefined near line 21 column 1

unknown@unknown> ex1.m
error: `ex1' undefined near line 22 column 1

有人可以建议我如何运行ex1文件吗?

5 个答案:

答案 0 :(得分:28)

这解决了问题[至少对我来说,在 Windows ]:

在Octave中输入以下命令:

>addpath(pwd)

在调用脚本之前:

>ex1

还有更多信息here

答案 1 :(得分:3)

Octave(我在4.0.3)将返回此错误(在第1行第1列附近未定义)如果您的路径中有大写字母。例如,如果您在Windows上有一个文件夹,名称为d:/ Myfolder / octave,那么您可以这样写:

cd d:/ myfolder / octave(注意小“m”)

然后八度音将失败。

您必须准确编写Windows路径:

cd d:/ Myfolder / octave

和八度音将很好

答案 2 :(得分:1)

  1. 您的文件扩展名应该是.m,有时富文本编辑器或其他编辑器会在.m后面添加自己的扩展名,例如,它变成.m.rtf。
  2. 在Coursera教程中,文件名是“全小写”,而函数名是驼峰式的,但是仅提供警告不会引发错误。
  3. 您应该位于.m函数文件实际存在的目录中,或者按照上面的@tucson的建议,可以使用addpath(pwd)从任何目录进行访问。

答案 3 :(得分:0)

您还需要将文件另存为“fileName.m”

Octave无法识别'fileName.M'。它必须是小写的“.m”扩展名

答案 4 :(得分:0)

对我来说,它帮助命名文件与函数相同 - 它区分大小写。