Autosys 文件观察器

发布于 2024-12-09 05:22:14 字数 249 浏览 1 评论 0原文

我的任务: 需要在服务器 A 的特定目录中查找任何新的/更新的文件。一旦此目录上存在新的/修改的文件,我将需要将该文件 ftp 到服务器 B。

我可以使用 Autosys 和 shell 脚本来执行此操作吗?或者 Java 程序更适合这项任务?

如果我使用 Autosys,我可以设置文件观察器作业。成功后我可以触发另一项工作。但是这个作业怎么知道文件名呢?文件观察器是否足够聪明,可以将文件名作为参数传递给另一个作业?

请帮忙....

My Task :
Need to look for any new/updated files in particular directory of Server A. Once a file new/modified file is present on this directoty, I will need to ftp that file to Server B.

Can I do this with Autosys and shell scripts ? or will a Java program be more appropriate for this task ?

If I go with Autosys, I can setup a file watcher job. On success I can trigger another job. But how will this job know the file name ? Is file watcher smart enough to pass the file name as parameter to another job ?

Please help....

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

等数载,海棠开 2024-12-16 05:22:14

文件观察器作业用于检查文件是否存在并检查文件的大小。您必须提前知道文件的名称。在您的情况下,如果您可以收到任意数量的您事先不知道其名称的新文件,则文件监视程序作业将无法正常工作。

一种可行的解决方案是:

  1. 编写一个 shell 脚本来
    • 获取您正在观看的目录的 ls -l 并将其保存到文件
    • 将此文件与上次运行脚本生成的文件进行比较
    • 找出新文件和已更改的文件,并将它们通过 ftp 传输到目的地
  2. 在 autosys 中安排脚本定期运行,例如每 10 分钟运行一次。

The file watcher job is for checking the existence of a file and checking the size of it. You have to know the name of the file in advance. In your case if you can receive any number of new files whose names you don't know beforehand, the file watcher job is not going to work.

One plausible solution can be:

  1. Write a shell script that will
    • Get ls -l of the directory you are watching and save it to a file
    • Compare this file with the file generated from the last run of the script
    • Find out the new files and the files that were changed and ftp them to the destination
  2. Schedule the script in autosys to run periodically, say every 10 mins.
耳钉梦 2024-12-16 05:22:14
  1. 编写一个 shell 脚本 -
    一个)。 cd 到该目录
    b).使用find命令查找所有文件,可以选择文件扩展名
    在查找中,例如。 *.txt 或 *.csv。您也可以选择时间字段,如果您
    想要检查不早于特定时间段的文件。
    或者
    在您的情况下,您可以维护文件的版本控制,一旦文件到达并被 find 命令找到,您可以重命名该文件。这样您可以确保您拥有要 ftp 的最新文件。
    您可以通过在您不想拥有旧文件多少天后创建一个逻辑来存档或清除旧文件。
    c).将find的输出发送到一个文件,测试该文件,如果它不为空.ftp该文件
    到服务器 B。
  2. 将此脚本安排在每隔几分钟运行一次的作业中,具体取决于
    文件到达的频率。
  3. 在成功条件下,检查作业的上一次运行是否为成功。
  1. Write a shell script -
    a). cd to that directory
    b). use find command to find all the files,can choose the file extension
    in find, for eg. *.txt or *.csv. You can opt for time field as well, if you
    want to check for files which are not older than a certain period.
    OR
    In ur case u can maintain versioning of files,once the file comes and is found by the find command, u can rename the file.This way u can ensure u have the latest file to be ftp'ed.
    You can archive or purge the old files, by creating a logic after how many days u don't want to have them.
    c). Send the ouput of find to a file, test the file, if it is not empty.ftp that file
    to server B.
  2. Schedule this script inside a job which runs every few minutes, depending on the
    frequency of the file arrival.
  3. In the success condition, check if the previous run of the job is in Success.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文