2016-09-20 1 views
0

Nous avons un script .CMD que nous déclenchons depuis Control-M.L'exécution d'un script .CMD à partir de Control-M ne fonctionne pas

A main.cmd est appelé de Control-M. Ce script est exécuté en tant que compte de service 'accnt_svc' que nous avons également configuré dans Control-M. Avant de configurer dans Control-M, nous testons cette fonctionnalité en cours d'exécution à partir de l'invite de commande (en tant qu'administrateur) et via le planificateur de tâches Windows exécuté en tant que compte de service "acct_svc".

Lors de l'exécution dans le contrôle M, le journal montre erreur indiquant un indice (par exemple sub.cmd est appelé à partir main.cmd) disant que le sub.cmd est invalide.

Nous vérifié les autorisations et ils ont tous deux les mêmes paramètres.

Nous avons essayé un autre script, cette fois, nous avons créé une enveloppe qui « appelle » le script principal. Cela a bien fonctionné. S'il vous plaît vérifier ci-dessous emballage:

SET V_CMDDRV=E: 
%V_CMDDRV% 
CD %V_CMDDIR% 
CALL CALL %V_CMDDIR%\main.cmd 

Lorsque nous créons un Main_Wrapper.cmd appelant le main.cmd cela fonctionne très bien. Puis-je savoir pourquoi Control-M se comporte de cette façon?

Merci

+0

Avez-vous capturé la sortie de l'exécution de ce wrapper? Dans quel répertoire est-il sur E:? S'il vous plaît poster le message de sortie et d'erreur en utilisant copier/coller. – lit

+0

Salut, les scripts sont situés dans le lecteur E. La sortie se présente comme suit 'E $ \\ main.cmd « sub.cmd » est pas reconnu comme une commande interne ou externe, programme exécutable ou un fichier de commandes. La syntaxe de la commande est incorrecte. statistiques d'emploi d'objets ==================== Temps total CPU utilisateur: 0,016 second' –

+0

La sortie d'erreur doit être placé dans la question et formaté pour être lu . Avez-vous une sortie de la commande 'CD% V_CMDDIR%'? Dans quel répertoire se trouve-t-il? Dans quel répertoire se trouve 'sub.cmd'? 'E $ \\ main.cmd' semble suspect. Est-ce ce que Control-M fait pour d'autres emplois? – lit

Répondre

0

Lors de l'émission d'une commande via Control-M, il sera par exécution par défaut de votre run as répertoire de l'utilisateur. De la sortie que vous avez attaché il ressemble main.cmd faudra peut-être exécuter à partir E: au lieu du %HOMEPATH% du compte de service acct_svc.