【问题标题】:mkdir from Dymola mos script来自 Dymola mos 脚本的 mkdir
【发布时间】:2019-02-19 10:38:25
【问题描述】:

我有一个运行多个模拟的 mos 脚本。在运行模拟之前,我想cd 到一个 new 目录,以便保存所有结果和日志文件并且永远不会被覆盖。据我所知,目前只能cd 到现有目录。任何人都建议如何创建一个名为 e.g. 的目录。 temp_modelnamecd 从 mos 脚本到该目录?我可以在系统调用中使用mkdir,还是有一个方便的包装器准备好了但我错过了?

编辑:根据下面给出的答案,这是我目前的解决方案:

// cd to temporary directory temp_XYZ
i = 1;
tempDirName = home + "/Documents/Dymola/temp_" + String(i, format="03G");
while Modelica.Utilities.Files.exist(tempDirName) loop
    i=i+1;
    tempDirName = home + "/Documents/Dymola/temp_" + String(i, format="03G");
end while;
Modelica.Utilities.Files.createDirectory(tempDirName);
cd(tempDirName);

【问题讨论】:

    标签: dymola


    【解决方案1】:

    实用程序包包含递归创建目录的功能:

    Modelica.Utilities.Files.createDirectory("temp_modelname")
    

    【讨论】:

    • 为什么是while循环?如果需要,该函数会创建中间目录。
    • 查看我编辑的答案。可能还有其他/更好的方法,但这对我有用。作为替代方案,可以附加另一个变量,例如模型名称。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-02
    相关资源
    最近更新 更多