Preschedulecmd / Prenschedulecmd
L'option preschedulecmd indique une commande que le programme client traite avant d'exécuter un planning.
Le programme client attend la fin de la commande avant de démarrer le planning. Si vous ne voulez pas attendre, spécifiez prenschedulecmd.
- L'aboutissement de la commande preschedulecmd est considéré comme une condition préalable à la réalisation de l'opération planifiée. Si la commande preschedulecmd n'aboutit pas avec un code retour de 0, l'opération planifiée et les commandes postschedulecmd et postnschedulecmd ne vont pas s'exécuter. Le client signalera que l'événement planifié a échoué et le code retour sera 12. Si vous ne souhaitez pas que la commande preschedulecmd soit régie par cette règle, vous pouvez créer un script ou un fichier de traitement par lots qui appelle la commande et se ferme avec le code retour 0. Configurez ensuite preschedulecmd pour appeler le script ou le fichier de traitement par lots. Le code retour de la commande prenschedulecmd n'est pas analysé et n'a aucun effet sur le code retour de l'événement planifié.
- Le serveur peut également définir l'option preschedulecmd (et l'option prenschedulecmd ).
Clients pris en charge
Cette option s'applique à tous les clients. L'API IBM® Storage Protect ne prend pas en charge cette option. Elle peut également être définie par le serveur.
Fichier d'options



Placez cette option dans le fichier d'options système du client (dsm.sys) dans une section serveur. Vous
pouvez définir cette option dans l'onglet Planificateur,
boîte de dialogue Commande de planification de l'éditeur de
préférences.
Placez cette option dans le fichier d'options client (dsm.opt). Vous
pouvez définir cette option dans l'onglet Planificateur,
boîte de dialogue Commande de planification de l'éditeur de
préférences.
Syntaxe
Paramètres
- chaîne_cmd
- Définit la commande à exécuter. N'utilisez qu'une seule option preschedulecmd. Cette option vous permet d'entrer une commande à exécuter avant un planning.



Si la chaîne de commande contient des blancs, placez-la entre guillemets. Si elle contient des guillemets, placez-les
entre apostrophes.
Indiquez la chaîne de commande comme si vous l'entriez à partir de l'invite du
système d'exploitation. Si la chaîne que vous indiquez nécessite des guillemets pour s'exécuter à une invite Windows, ajoutez les guillemets. Si la chaîne de commande contient des blancs, insérez-la entre apostrophes.
Dans cet exemple, des apostrophes sont nécessaires car la chaîne de commande contient des caractères espace :'net stop someservice'
Dans le prochain exemple, des guillemets sont nécessaires car le fichier renommé et le nouveau nom de fichier contiennent tous deux des caractères espace. Etant donné que la chaîne de commande contient des caractères espace, l'intégralité de la chaîne doit être placée entre apostrophes.presc 'rename "c:\myapp\log file.log" "log file.old"'Utilisez une chaîne vide ou null pour chaîne_cmd si vous souhaitez empêcher l'exécution de commandes utilisées par l'administrateur du serveur IBM Storage Protect pour postschedulecmd et preschedulecmd. Si vous spécifiez ce type de chaîne pour l'une ou l'autre de ces options, l'administrateur ne pourra pas exécuter de commande avec ces deux options.
Si l'administrateur définit une chaîne vide ou des espaces pour l'option preschedulecmd, vous ne pourrez pas exécuter de commande avant un planning.
Pour Mac OS X, si la commande preschedulecmd schedule est une commande AppleScript,, vous devez utiliser la commande osascript pour exécuter le script. Par exemple, si Database Script
est un script AppleScript, entrez la commande suivante :preschedulecmd osascript "/Volumes/La Pomme/Scripting/ Database Script"
Exemples
- Fichier d'options :




preschedulecmd "<the quiesce command of your database product> database"


La chaîne de commande est une commande valide pour la mise au repos de votre base de données.
presc stopdb.cmd
presc 'rename c:\myapp\logfile.log logfile.old'
presc 'net stop "simple service"'
presc 'rename "c:\myapp\log file.log" "log file.old"'
presc '"C:\Program Files\MyTools\runreport.bat"
log1.in log2.in'


Ligne de commande:



-preschedulecmd="'quiesce database'"
Ligne de commande :
-preschedulecmd='"quiesce database"'
Cette option est valide uniquement sur la ligne de commande initiale. Elle n'est pas valide en mode interactif.
