2009-09-26 15 views
8

Nous utilisons AutoSys pour la planification des tâches et je rédige beaucoup de scripts JIL (Job Instruction Language) pour les supprimer et les réinsérer en raison de petits changements de travail (par exemple, heure de démarrage, etc.) . Y a-t-il une commande de mise à jour qui peut être utilisée? AutoSys cheat sheet de CA n'a aucune information sur un.Mise à jour du programmateur AutoSys JIL

Répondre

18

Oui,

C'est l'attribut update_job:.

exemple pour changer la boîte BOX_A heure de début à 15:00 de 14:00

update_job: BOX_A 
start_times: "15:00" 

Enregistrer ce dans un fichier et l'exécuter en utilisant jil < filename.jil

+0

Le point clé est de sauvegarder ce dans un fichier, puis utiliser jil

+0

Vous pouvez également taper jil dans une invite unix, puis taper la commande de travail autosys –

0

update_job: YOUR_JOB_NAME start_times: 04:00

+0

Veuillez ajouter quelques explications pour d'autres lecteurs. –

1

Vous pouvez utiliser UPDATE_JOB. Prenez note que si vous utilisez ceci et que votre mise à jour consiste à supprimer start_times (au lieu de simplement le mettre à jour), ce que vous allez faire avec update_job jil est d'inclure l'entrée start_times mais ne spécifiez aucune valeur. Voir l'exemple ci-dessous:

update_job: BOX_A 
start_times: 

Ce qui précède supprimera les heures de début du travail. Si vous supprimez simplement start_times dans votre mise à jour jil, start_times ne sera pas mis à jour et restera dans le jil.

0

Guys si vous êtes intéressé, vous pouvez créer un travail autosys pour mettre à jour un autre travail. La sortie ci-dessous peut être placée dans un fichier jil pour créer un travail autosys qui, une fois démarré, supprimera sa d'un travail qui s'exécute 7 jours par semaine. J'ai beaucoup de travail de base de données qui parfois ne doivent pas fonctionner pendant un week-end de construction, c'est-à-dire le samedi.

 -------------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: [email protected] 
    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------------------- 
0

Je comprends ce que fait la mise à jour et que vous pouvez mettre à jour de nombreux autres attributs. L'exemple ci-dessus ne nécessite pas de créer un fichier jil pour effectuer la mise à jour.

Mon exemple ci-dessus est pour un scénario dans lequel un utilisateur doit le faire pour maintenir adhoc. Dans ce cas, ils créent une boîte de maintenance avec les travaux qui peuvent être nécessaires pour activer et désactiver certains attributs autosys sur les travaux. Je trouve facile de tout voir dans une boîte et ensuite vous pouvez créer un autre travail pour remettre les choses en place.

Peu de gens savent que vous pouvez exécuter une commande update jil à partir de l'interface graphique. tout ce que vous devez faire est de spécifier dans la ligne de commande

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

Une chose que vous devrez peut-être envisager d'en entrant vos commandes directement à partir jil CLI, cette sortie doit être écrit après avoir terminé votre commands.Otherwise il pourrait ne pas prendre effet. Cela s'est passé avec moi il y a quelques jours.

Ainsi, si elle happend que vous avez entré les commandes JIL et il n'a pas fallu effet, essayez d'écrire la sortie à la fin de la prompt.Something comme:

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