【问题标题】:AutoSys scheduler update JILAutoSys 调度程序更新 JIL
【发布时间】:2009-09-26 17:06:40
【问题描述】:

我们使用 AutoSys 进行作业调度,我发现自己编写了很多 JIL(作业指导语言)脚本来删除框并由于小的作业更改(例如开始时间等)而重新插入它们。有没有可以使用的更新命令? CA 的 AutoSys cheat sheet 没有任何信息。

【问题讨论】:

    标签: scheduler autosys


    【解决方案1】:

    是的,

    它是 update_job: 属性。

    将框 BOX_A 开始时间从 14:00 更改为 15:00 的示例

    update_job: BOX_A
    start_times: "15:00"
    

    将其保存到文件中并使用 jil 运行它

    【讨论】:

    • 关键是将这个保存在一个文件中,然后使用jil
    • 或者,您可以在 unix 提示符下输入 jil,然后输入您的 autosys 作业命令
    【解决方案2】:

    直接从jil CLI输入命令时可能需要考虑的一件事,必须在完成命令后编写退出。否则可能不会生效。几天前发生在我身上。

    所以,如果你在 JIL 中输入了命令并且没有生效,请尝试在提示符末尾写 exit。类似:

    jil>> update_job: xyz <Enter>
    jil>>1>start_times: 11:00 <Enter>
    jil>>2>exit <Enter>
    

    【讨论】:

      【解决方案3】:

      您可以使用 UPDATE_JOB。请注意,如果您使用它并且您的更新是删除 start_times(而不仅仅是更新它),那么您将对 update_job jil 执行的操作是仍然包含 start_times 条目但不指定任何值。请参阅下面的示例:

      update_job: BOX_A
      start_times:
      

      上述将删除作业的 start_times。如果只是删除更新jil中的start_times,start_times将不会更新,它仍然会保留在jil中。

      【讨论】:

        【解决方案4】:

        update_job: YOUR_JOB_NAME start_times: 04:00

        【讨论】:

          【解决方案5】:

          如果您有兴趣,可以创建一个 autosys 作业来更新另一个作业。下面的输出可以放在 jil 文件中以创建一个 autosys 作业,该作业在启动时将从每周运行 7 天的作业中删除 sa。我有许多数据库作业,有时不需要在构建周末(即星期六)运行。

                 -------------This goes in the jil file-------------------
                /* ----------------- update_job_date ----------------- */
          
               insert_job: update_job_date   job_type: c
               box_name: update_job_attributes
               command: echo "update_job\: runs_every_day  job_type\: c  days_of_week\: mo,tu,we,th,fr,su" | jil
               machine: localhost
               owner: root@localhost
               permission: gx,wx
               condition: d(job1)
               description: "change date for update_job_date"
               std_out_file: "$TEMP_PATH/$AUTO_JOB_NAME.log"
               std_err_file: "$TEMP_PATH/$AUTO_JOB_NAME.log"
               alarm_if_fail: 1
               profile: /home/variables_autosys
          
               -------------This goes in the jil file-------------------
          

          【讨论】:

            【解决方案6】:

            我了解更新的作用,并且您可以更新许多其他属性。上述示例不需要您创建 jil 文件来执行更新。

            我上面的示例是针对用户需要为临时维护执行此操作的场景。因此,在这种情况下,他们创建了一个包含作业的维护箱,其中可能需要打开和关闭作业的某些 autosys 属性。我发现很容易看到一个盒子里的所有东西,然后你可以创建另一个工作来把东西放回去。

            没有多少人知道您可以从图形界面运行更新 jil 命令。 你所要做的就是在命令行中指定这个

                  command: echo "update_job\: runs_every_day  job_type\: c  start_times\: " | jil
            

            【讨论】:

              【解决方案7】:

              AutoSys 允许您添加、修改和删除具有以下属性的作业名称。

              insert_job: JOB_NAME --> 需要根据所选择的作业类型提供其他子属性。

              update_job: JOB_NAME --> 只需要需要修改的子属性即可。如果要删除一个,则应将值替换为单个空白,并且需要将修改替换为新值。一些子属性依赖于其他子属性,例如start_times,只有在date_conditions 设置为TRUE 或FALSE 时才会生效。

              delete_job: JOB_NAME --> 不需要其他子属性

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多