您可以使用 fteCreateMonitor 命令来监视目录。 替换变量的值可以在任务 XML 定义中被替换并用于定义传输行为。
关于本任务
在该示例中,源代理称为 AGENT_HOP。 AGENT_HOP 监视的目录称为 /test/monitored。 代理每 5 分钟轮询一次目录。在将 .zip 文件写入目录后,将该文件写入目录的应用程序会将触发器文件写入同一目录。 触发器文件的名称与 .zip 文件名称相同,但文件扩展名不同。 例如,在将文件 file1.zip 写入目录后,会将文件 file1.go 写入该目录。 资源监视器监视与 *.go 匹配的文件的目录,然后使用变量替换来请求传输相关联的 .zip 文件。
过程
- 创建任务 XML,以定义监视器被触发时应执行的任务。
<?xml version="1.0" encoding="UTF-8" ?>
<request version="4.00"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="FileTransfer.xsd">
<managedTransfer>
<originator>
<hostName>blue.example.com</hostName>
<userID>USER1</userID>
</originator>
<sourceAgent agent="AGENT_HOP" QMgr="QM_HOP" />
<destinationAgent agent="AGENT_SKIP" QMgr="QM_SKIP" />
<transferSet>
<item mode="binary" checksumMethod="none">
<source>
<file>/test/monitored/${fileName{token=1}{separator=.}}.zip</file>
</source>
<destination type="file" exist="overwrite">
<file>/out/${fileName{token=1}{separator=.}}.zip</file>
</destination>
</item>
</transferSet>
</managedTransfer>
</request>
变量(将替换为与触发器文件相关联的值)以粗体突出显示。 该任务 XML 保存到文件 /home/USER1/task.xml
- 创建资源监视器以监视目录 /test/monitored。
提交以下命令:
fteCreateMonitor -ma AGENT_HOP -mm QM_HOP -md /test/monitored
-mn myMonitor -mt /home/USER1/task.xml
-tr match,*.go -pi 5 -pu minutes
- 用户或程序将文件 jump.zip 写入目录 /test/monitored,然后将文件 jump.go 写入目录。
- 监视器由文件 jump.go的存在触发。 代理将在任务 XML 中替换有关触发器文件的信息。
这导致任务 XML 转换为:
<?xml version="1.0" encoding="UTF-8" ?>
<request version="4.00"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="FileTransfer.xsd">
<managedTransfer>
<originator>
<hostName>blue.example.com</hostName>
<userID>USER1</userID>
</originator>
<sourceAgent agent="AGENT_HOP" QMgr="QM_HOP" />
<destinationAgent agent="AGENT_SKIP" QMgr="QM_SKIP" />
<transferSet>
<item mode="binary" checksumMethod="none">
<source>
<file>/test/monitored/jump.zip</file>
</source>
<destination type="file" exist="overwrite">
<file>/out/jump.zip</file>
</destination>
</item>
</transferSet>
</managedTransfer>
</request>
结果
已执行任务 XML 所定义的传输。 jump.zip 文件由 AGENT_HOP 从 /test/monitored 目录中读取,并传输至位于运行 AGENT_SKIP 的系统上的名为 /out/jump.zip 的文件。