MATLAB脚本是否可能根据正在执行的操作系统的不同而表现不同?

Eth*_*ite 6 matlab operating-system cross-platform

我在Linux和Windows XP上运行MATLAB.我的文件在我使用的所有计算机中同步,但由于Linux和Windows之间的目录结构不同,我必须为不同的操作系统分别设置导入和导出行.目前我只是为错误的操作系统注释掉了这一行,但我想知道是否有可能写下这样的内容:

if OS == Windows
    datafile = csvread('C:\Documents and Settings\Me\MyPath\inputfile.csv');
else
    datafile = csvread('/home/Me/MyPath/inputfile.csv');
end
Run Code Online (Sandbox Code Playgroud)

这也是一个更普遍的问题,适用于需要使用MATLAB执行系统命令的情况system('command').

Amr*_*mro 7

您可以使用ispc/isunix/ismac函数来确定平台,甚至可以使用计算机功能获取有关机器的更多信息

if ispc
    datafile = csvread('C:\Documents and Settings\Me\MyPath\inputfile.csv');
else
    datafile = csvread('/home/Me/MyPath/inputfile.csv');
end
Run Code Online (Sandbox Code Playgroud)