2016-09-20 5 views
0

Wir haben ein .CMD-Skript, das wir von Control-M auslösen.Das Ausführen eines .CMD-Skripts von Control-M funktioniert nicht

Ein main.cmd wird von Control-M aufgerufen. Dieses Skript wird als 'accnt_svc' Dienstkonto ausgeführt, das wir auch in Control-M konfiguriert haben. Vor dem Einrichten in Control-M haben wir diesen Vorgang getestet, als er von der Eingabeaufforderung (als Administrator) ausgeführt wurde und der Windows Taskplaner als das Dienstkonto 'acct_svc' ausgeführt wurde.

Wenn in Control M ausgeführt wird, zeigt das Protokoll Fehler an, der einen Index (sagen sub.cmd wird von main.cmd) besagt, dass die Sub.cmd ungültig ist.

Wir haben die Berechtigungen überprüft und beide haben die gleichen Einstellungen.

Wir haben ein anderes Skript versucht, dieses Mal haben wir einen Wrapper erstellt, der das Hauptskript aufruft. Das hat gut funktioniert. Bitte überprüfen Sie folgende Wrapper:

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

Wenn wir einen Main_Wrapper.cmd Aufruf der main.cmd schaffen das funktioniert gut.

Darf ich wissen, warum Control-M sich so verhält?

Dank

+0

Haben Sie die Ausgabe dieses Wrappers erfasst? In welchem ​​Verzeichnis ist es auf E:? Bitte senden Sie die Ausgabe und Fehlermeldung mit Kopieren/Einfügen. – lit

+0

Hallo, die Skripte befinden sich in Laufwerk E. Die Ausgabe ist wie folgt 'E $ \\ main.cmd 'sub.cmd' wird nicht als interner oder externer Befehl erkannt, ausführbare Programm oder Batch-Datei. Die Syntax des Befehls ist falsch. Job-Objekt-Statistik ==================== Gesamtbenutzer-CPU-Zeit: 0,016 Sekunden " –

+0

Die Fehlerausgabe sollte in die Frage eingefügt und formatiert werden, um lesbar zu sein . Haben Sie eine Ausgabe vom Befehl 'CD% V_CMDDIR%'? In welchem ​​Verzeichnis befindet sich das Verzeichnis? In welchem ​​Verzeichnis befindet sich 'sub.cmd'? 'E $ \\ main.cmd' sieht verdächtig aus. Ist dies das, was Control-M für andere Jobs macht? – lit

Antwort

0

Wenn ein Befehl über Control-M Ausgabe durch Standardlauf von Ihrem run as Benutzer Home-Verzeichnis wird. Von der Ausgabe, die Sie angehängt haben, sieht es so aus, als ob main.cmd von E: anstelle des %HOMEPATH% des acct_svc Dienstkontos ausgeführt werden muss.

Verwandte Themen