Matlab 从八度音阶中的其他脚本文件运行脚本文件
我有几个运行测试的倍频程脚本文件,名为test_1、test_2等。我希望有一个脚本文件可以运行所有测试,而不必将所有测试文件切换为函数文件。我尝试了几种不同的方法:Matlab 从八度音阶中的其他脚本文件运行脚本文件,matlab,octave,executable,Matlab,Octave,Executable,我有几个运行测试的倍频程脚本文件,名为test_1、test_2等。我希望有一个脚本文件可以运行所有测试,而不必将所有测试文件切换为函数文件。我尝试了几种不同的方法: #!/path/to/octave -q addpath('/path/to/directory/containing/all/scripts/'); source(test_1.m); source(test_2.m); 但我总是得到“错误:对script/path/to/directory/containing/all/
#!/path/to/octave -q
addpath('/path/to/directory/containing/all/scripts/');
source(test_1.m);
source(test_2.m);
但我总是得到“错误:对script/path/to/directory/containing/all/scripts/test_1.m的调用无效”
(我已经尝试过source_file()、run(),并且只在行中显示文件名。)
有没有办法从八度音阶的脚本文件运行脚本文件?试试看
source test_1.m
或
相反
您的语法暗示test_1
是一个结构变量,您试图访问名为m
与run
命令相同(实际上,run
只是在引擎盖下调用source
)
如果脚本在路径上,也可以直接调用它。您只需确保不包含.m
扩展名,即
test_1
test_2
为了理解你所犯的错误:Octave告诉你“好的,路径中有一个文件'testo.m',这意味着有一个名为
testo
的脚本/函数可供我使用。但我不知道你为什么要告诉我从它访问成员.m
。这不是调用脚本或函数的方法!他们甚至没有会员!“顺便说一句,如果你想让你的代码也与matlab兼容,那就避免使用源代码
方法,因为这是特定于八度音阶的。运行
和直接调用脚本(如果在路径上)都可以。@Evagunter还可以看看
test_1
test_2