使用 fteCreateTransfer 来启动程序的示例

您可以使用 fteCreateTransfer 命令来指定在传输之前或之后要运行的程序。

除使用 fteCreateTransfer 之外,还可通过其他方法在传输之前或之后调用程序。 有关更多信息,请参阅 指定要与 MFT一起运行的程序

所有这些示例均使用以下语法来指定程序:
[type:]commandspec[,[retrycount][,[retrywait][,successrc]]]
有关此语法的更多信息,请参阅 fteCreateTransfer: 启动新的文件传输

运行可执行程序

以下示例指定一个称为 mycommand 的可执行程序并将两个自变量(ab)传递给该程序。
mycommand(a,b)
要在传输启动之前从源代理 AGENT1 运行该程序,请使用以下命令:
fteCreateTransfer -sa AGENT1 -da AGENT2 -presrc mycommand(a,b) 
destinationSpecification sourceSpecification

运行和重试可执行程序

以下示例指定一个称为 simple 的可执行程序,该程序不接受任何自变量。 针对 retrycount 指定值 1,针对 retrywait 指定值 5。 这些值意味着如果该程序不返回成功返回码,那么在等待五秒钟后,将重试该程序。 针对 successrc 不指定任何值,因此唯一的成功返回码是缺省值 0。
executable:simple,1,5
要在传输完成之后从源代理 AGENT1 运行该程序,请使用以下命令:
fteCreateTransfer -sa AGENT1 -da AGENT2 -postsrc executable:simple,1,5 
destinationSpecification sourceSpecification

运行 Ant 脚本并指定成功的返回码

以下示例指定名为 myscriptAnt 脚本,并将两个属性传递到该脚本。 使用 fteAnt 命令运行该脚本。 successrc 的值指定为 >2&<7&!5|0|14,这样会指定返回码 0、3、4、6,并且 14 表明成功。
antscript:myscript(prop1=fred,prop2=bob),,,>2&<7&!5|0|14
要在传输启动之前从目标代理 AGENT2 运行该程序,请使用以下命令:
fteCreateTransfer -sa AGENT1 -da AGENT2 -predst 
"antscript:myscript(prop1=fred,prop2=bob),,,>2&<7&!5|0|14"destinationSpecification sourceSpecification

运行 Ant 脚本并指定要调用的目标

以下示例指定名为 script2Ant 脚本以及要调用的两个目标 target1target2。 属性 prop1 也会传入,值为 recmfm(F,B)括号,逗号 (,) 和反斜杠 (\) 是 MFT 命令中的特殊字符,必须使用反斜杠 (\) 字符进行转义。 [Windows]可以在 Windows 上使用双反斜杠 (\\) 作为分隔符来指定文件路径,也可以使用单正斜杠 (/) 来指定文件路径。 在以下示例中,使用反斜杠字符 (\) 对逗号 (,) 和括号进行转义。
antscript:script2(target1,target2,prop1=recmfm\(F\,B\)),,,>2&<7&!5|0|14
要在传输完成之后从目标代理 AGENT2 运行该程序,请使用以下命令:
fteCreateTransfer -sa AGENT1 -da AGENT2 
-postdst "antscript:script2(target1,target2,prop1=recmfm\(F\,B\)),,,>2&<7&!5|0|14" 
destinationSpecification sourceSpecification

Ant 脚本中使用元数据

您可以将 Ant 任务指定为传输的以下任何调用:
  • pre source
  • post source
  • predestination
  • post destination
运行 Ant 任务时,将使用环境变量提供传输的用户元数据。 例如,可使用以下代码访问此数据:
<property environment="environment" />
<echo>${environment.mymetadata}</echo>
其中 mymetadata 是插入传输的部分元数据的名称。

运行 JCL 脚本

以下示例指定名为 ZOSBATCH的 JCL 脚本。 针对 retrycount 指定值 3、针对 retrywait 指定值 30,并针对 successrc 指定值 0。 这些值意味着,如果该脚本不返回成功返回码 0,那么会重试该脚本三次,两次尝试之间等待 30 秒。
jcl:ZOSBATCH,3,30,0
其中 ZOSBATCH 是称为 MYSYS.JCL 的 PDS 成员,agent.properties 文件包含 commandPath=....://'MYSYS.JCL':...
要在传输完成之后从源代理 AGENT1 运行该程序,请使用以下命令:
fteCreateTransfer -sa AGENT1 -da AGENT2 -postsrc jcl:ZOSBATCH,3,30,0 
destinationSpecification sourceSpecification