ecFlow学习笔记02.4.2 —— Repeat

目录

该教程的最新版已发布在GitHub上,请访问ecflow-tutorial-cn

这是 ecFlow 教程的一部分,完整教程请参看《ecFlow学习笔记02 —— 教程

    • *有时需要重复多次运行某些 task 或 family,按某指定值循环。ecFlow 提供 repeat 属性实现该功能。

repeat 可以按下列类型的序列循环:

  • 字符串
  • 整数
  • 日期

整数和日期的序列由起始元素、终止元素和可选的间隔(默认为1)生成。ecFlow 会创建一个与 repeat 名字对应的变量,可以在脚本或 trigger 表达式中使用。

ecf脚本

创建新的 task {shell}/test/f4/f5/t1{/shell}

Suite definition

在 suite definition 中添加 repeat

文本方式

定义语法:

下面以整型和日期为例说明。

Python方式

注意下面的对应关系
文本:ecflow.RepeatString
整数:ecflow.RepeatInteger
日期:ecflow.RepeatDate

Python API 说明

ecflow.RepeatDate 日期
ecflow.RepeatDay 天

示例:

ecflow.RepeatEnumerated 数组

示例

ecflow.RepeatInteger 整数

示例

ecflow.RepeatString 字符串

示例

任务

  1. 完成修改
  2. 替换 suite definition
  3. 在 ecflowview 中查看 repeat 变量
  4. /test/f4/f5/t1 将会运行多少次?
  5. 尝试在 ecflowview 中修改某个 repeat 的值。

词汇表

task
family
repeat
trigger
ecf script
suite definition
ecflowview