Command Reference > Pmcmd-Befehlsreferenz > Verwenden von pmcmd
  

Verwenden von pmcmd

pmcmd ist ein Programm zum Kommunizieren mit dem Integration Service. Mit pmcmd können Sie einige der Arbeiten ausführen, die Sie auch im Workflow Manager durchführen können, wie z. B. das Starten und Beenden von Arbeitsabläufen und Sitzungen.
Verwenden Sie pmcmd in den folgenden Modi:
Sie können Umgebungsvariablen für Benutzernamen und Passwörter mit pmcmd verwenden. Sie können Umgebungsvariablen zudem verwenden, um die Art und Weise anzupassen, mit der pmcmd Datum und Uhrzeit auf dem Computer anzeigt, auf dem der Integration Service-Prozess ausgeführt wird. Bevor Sie pmcmd verwenden, konfigurieren Sie diese Variablen auf dem Computer, auf dem der Integration Service-Prozess ausgeführt wird. Die Umgebungsvariablen gelten für pmcmd-Befehle, die auf dem Knoten ausgeführt werden.

Ausführen von Befehlen im Befehlszeilenmodus

Im Befehlszeilenmodus wird pmcmd jedes Mal aufgerufen und beendet, wenn Sie einen Befehl ausführen. Der Befehlszeilenmodus ist sinnvoll, wenn Sie pmcmd-Befehle mit Batchdateien, Skripts oder anderen Programmen ausführen möchten.
Sie können pmcmd-Befehle mit Betriebssystem-Planungstools wie cron verwenden oder pmcmd-Befehle in Shell- oder Perl-Skripts einbetten.
Wenn Sie pmcmd im Befehlszeilenmodus ausführen, geben Sie in jedem Befehl Verbindungsinformationen wie Domänenname, Name des Integration Service, Benutzername und Passwort ein. Um beispielsweise den Arbeitsablauf "wf_SalesAvg" im Ordner "SalesEast" zu starten, verwenden Sie folgende Syntax:
pmcmd startworkflow -sv MyIntService -d MyDomain -u seller3 -p jackson ‑f SalesEast wf_SalesAvg
Der Benutzer "seller3" mit dem Passwort "jackson" sendet die Anfrage, um den Arbeitsablauf zu starten.
Wenn Sie eine erforderliche Option nicht oder falsch eingeben, schlägt der Befehl fehl und pmcmd gibt einen Nicht-Null-Rückgabewert zurück. Weitere Informationen über alle Rückgabewerte finden Sie unter pmcmd-Rückgabewerte
So führen Sie pmcmd-Befehle im Befehlszeilenmodus aus:
    1Wechseln Sie an der Eingabeaufforderung zu dem Verzeichnis, in dem sich die ausführbare pmcmd-Datei befindet.
    Standardmäßig installiert das PowerCenter-Installationsprogramm pmcmd im \server\bin-Verzeichnis.
    2Geben Sie pmcmd gefolgt vom Befehlsnamen und den erforderlichen Optionen und Argumenten ein:
    pmcmd command_name [-option1] argument_1 [-option2] argument_2...

pmcmd-Rückgabewerte

Im Befehlszeilenmodus gibt pmcmd die erfolgreiche oder fehlgeschlagene Ausführung eines Befehls durch einen Rückgabewert an. Rückgabewert "0" gibt an, dass der Befehl erfolgreich ausgeführt wurde. Jeder andere Rückgabewert gibt an, dass der Befehl fehlgeschlagen ist.
Verwenden Sie den DOS- oder UNIX-echo-Befehl unmittelbar nach Ausführung eines pmcmd-Befehls, um den Rückgabewert für den Befehl anzuzeigen:
In der folgenden Tabelle werden die Rückgabewerte für pmcmd beschrieben:
Code
Beschreibung
0
Für alle Befehle gibt ein Rückgabewert von Null an, dass der Befehl erfolgreich ausgeführt wurde. Sie können folgende Befehle im wait- oder nowait-Modus ausführen: starttask, startworkflow, aborttask und abortworkflow. Wenn Sie einen Befehl im wait-Modus ausführen, gibt ein Rückgabewert von Null an, dass der Befehl erfolgreich ausgeführt wurde. Wenn Sie einen Befehl im nowait-Modus ausführen, gibt ein Rückgabewert von Null an, dass die Anfrage erfolgreich an den Integration Service übermittelt wurde und dieser die Anfrage bestätigt hat.
1
Der Integration Service ist nicht verfügbar oder pmcmd kann keine Verbindung zum Integration Service herstellen. Es gibt ein Problem mit dem TCP/IP-Hostnamen, der Portnummer oder dem Netzwerk.
2
Der Name der Aufgabe, des Arbeitsablaufs oder des Ordners ist nicht vorhanden.
3
Beim Starten oder Ausführen des Arbeitsablaufs oder der Aufgabe ist ein Fehler aufgetreten.
4
Verwendungsfehler. Sie haben die falschen Optionen an pmcmd übergeben.
5
Ein interner pmcmd-Fehler ist aufgetreten. Setzen Sie sich mit dem globalen Informatica-Kundensupport in Verbindung.
7
Sie haben einen ungültigen Benutzernamen oder ein ungültiges Passwort verwendet.
8
Sie verfügen nicht über die entsprechenden Berechtigungen zum Ausführen dieser Aufgabe.
9
Die Verbindung zum Integration Service ist beim Senden der Anfrage abgelaufen.
12
Der Integration Service kann die Wiederherstellung nicht starten, da die Sitzung oder der Arbeitsablauf geplant ist, auf ein Ereignis wartet, wartet, initialisiert bzw. angehalten, aktiviert oder ausgeführt wird.
13
Die Benutzername-Umgebungsvariable ist auf einen leeren Wert gesetzt.
14
Die Passwort-Umgebungsvariable ist auf einen leeren Wert gesetzt.
15
Die Benutzername-Umgebungsvariable fehlt.
16
Die Passwort-Umgebungsvariable fehlt.
17
Die Parameterdatei ist nicht vorhanden.
18
Der Integration Service hat die Parameterdatei gefunden, verfügt aber nicht über die Anfangswerte für die Sitzungsparameter, wie beispielsweise $input oder $output.
19
Der Integration Service kann die Sitzung nicht wiederaufnehmen, da der Arbeitsablauf für eine kontinuierliche Ausführung konfiguriert wurde.
20
Ein Repository-Fehler ist aufgetreten. Stellen Sie sicher, dass der Repository Service und die Datenbank ausgeführt werden und die Anzahl der Verbindungen in der Datenbank nicht überschritten wird.
21
Der Integration Service wird heruntergefahren und akzeptiert keine neuen Anfragen.
22
Der Integration Service kann keine eindeutige Instanz des angegebenen Arbeitsablaufs/der angegebenen Sitzung finden. Geben Sie den Befehl erneut mit dem Namen des Ordners und des Arbeitsablaufs ein.
23
Für die Anfrage stehen keine Daten zur Verfügung.
24
Keine Speicherkapazität.
25
Befehl wird abgebrochen.

Ausführen von Befehlen im interaktiven Modus

Verwenden Sie pmcmd im interaktiven Modus zum Starten und Stoppen von Arbeitsabläufen und Sitzungen, ohne ein Skript zu schreiben. Wenn Sie den interaktiven Modus verwenden, geben Sie Verbindungsinformationen wie Domänenname, Name des Integration Service, Benutzername und Passwort ein. Sie können nachfolgende Befehle ausführen, ohne die Verbindungsinformationen für jeden Befehl einzugeben.
Die folgenden Befehle rufen beispielsweise den interaktiven Modus auf, stellen eine Verbindung zum Integration Service "myintservice" her und starten die Arbeitsabläufe "wf_SalesAvg" und "wf_SalesTotal" im Ordner "SalesEast":
pmcmd
pmcmd> connect -sv MyIntService -d MyDomain -u seller3 -p jackson
pmcmd> setfolder SalesEast
pmcmd> startworkflow wf_SalesAvg
pmcmd> startworkflow wf_SalesTotal
So führen Sie pmcmd-Befehle im interaktiven Modus aus:
    1Wechseln Sie an der Eingabeaufforderung zu dem Verzeichnis, in dem sich die ausführbare pmcmd-Datei befindet.
    Standardmäßig installiert das PowerCenter-Installationsprogramm pmcmd im \server\bin-Verzeichnis.
    2Geben Sie an der Eingabeaufforderung pmcmd ein.
    Dies startet pmcmd im interaktiven Modus und zeigt die pmcmd>-Eingabeaufforderung an. pmcmd muss nicht vor jedem Befehl im interaktiven Modus eingegeben werden.
    3Geben Sie die Verbindungsinformationen für die Domäne und den Integration Service ein. Beispiel:
    connect -sv MyIntService -d MyDomain -u seller3 -p jackson
    4Geben Sie einen Befehl und dessen Optionen und Argumente in folgendem Format ein:

    command_name [-option1] argument_1 [-option2] argument_2...
    pmcmd führt den Befehl aus und zeigt die Eingabeaufforderung erneut an.
    5Geben Sie exit ein, um eine interaktive Sitzung zu beenden.

Festlegen von Standardwerten

Nachdem Sie eine Verbindung zu einem Integration Service mit pmcmd hergestellt haben, können Sie Standardordner oder Bedingungen festlegen, die jedes Mal verwendet werden sollen, wenn der Integration Service einen Befehl ausführt. Wenn Sie beispielsweise eine Reihe von Befehlen oder Aufgaben im selben Ordner eingeben möchten, geben Sie den Namen des Ordners mit dem setfolder-Befehl an. Alle nachfolgenden Befehle verwenden standardmäßig diesen Ordner.
In der folgenden Tabelle werden die Befehle beschrieben, mit denen Sie Standardwerte für nachfolgende Befehle festlegen:
Befehl
Beschreibung
setfolder
Legt einen Ordner als Standardordner fest, in dem alle nachfolgenden Befehle ausgeführt werden sollen.
setnowait
Führt nachfolgende Befehle im nowait-Modus aus. Die pmcmd-Eingabeaufforderung ist verfügbar, nachdem der Integration Service den vorangegangenen Befehl erhalten hat. Der nowait-Modus fungiert als Standardmodus.
setwait
Führt nachfolgende Befehle im wait-Modus aus. Die pmcmd-Eingabeaufforderung steht nach Abschluss des vorherigen Befehls durch den Integration Service zur Verfügung.
unsetfolder
Kehrt den setfolder-Befehl um.
Sie können mit dem pmcmd ShowSettings-Befehl die Standardeinstellungen anzeigen.

Ausführen im wait-Modus

Sie können pmcmd im wait- oder nowait-Modus ausführen. Im wait-Modus kehrt pmcmd nach Abschluss des Befehls zur Shell oder Eingabeaufforderung zurück. Nachfolgende Befehle können erst ausgeführt werden, wenn der vorherige Befehl abgeschlossen ist.
Wenn Sie beispielsweise folgenden Befehl eingeben, startet pmcmd den Arbeitsablauf "wf_SalesAvg" und kehrt erst dann zur Eingabeaufforderung zurück, wenn der Arbeitsablauf abgeschlossen ist:
pmcmd startworkflow -sv MyIntService -d MyDomain -u seller3 -p jackson ‑f SalesEast -wait wf_SalesAvg
Im nowait-Modus kehrt pmcmd sofort zur Shell oder Eingabeaufforderung zurück. Sie müssen nicht auf den Abschluss eines Befehls warten, bevor Sie den nächsten Befehl ausführen.
Wenn Sie beispielsweise die folgenden Befehle eingeben, startet pmcmd den Arbeitsablauf "wf_SalesTotal" selbst dann, wenn der Arbeitsablauf "wf_SalesAvg" noch ausgeführt wird:
pmcmd startworkflow -sv MyIntService -d MyDomain -u seller3 -p jackson ‑f SalesEast wf_SalesAvg
pmcmd startworkflow -sv MyIntService -d MyDomain -u seller3 -p jackson ‑f SalesEast wf_SalesTotal
Standardmäßig führt pmcmd Befehle im nowait-Modus aus.
Sie können den wait-Modus im Befehlszeilen- oder interaktiven Modus konfigurieren. Verwenden Sie im Befehlszeilenmodus die Option -wait, um einen Befehl im wait-Modus auszuführen. Verwenden Sie im interaktiven Modus den Befehl setwait oder setnowait, bevor Sie nachfolgende Befehle eingeben.

Scripting von pmcmd-Befehlen

Bei Einsatz von pmcmd verwenden Sie möglicherweise regelmäßig einige Befehle mit bestimmten Optionen und Argumenten. Sie verwenden pmcmd beispielsweise, um den Status des Integration Service zu überprüfen. In diesem Fall können Sie ein Skript oder eine Batchdatei erstellen, um einen oder mehrere pmcmd-Befehle einschließlich der zugehörigen Optionen und Argumente aufzurufen.
Sie können Skripts in Befehlszeilenmodus ausführen. Sie können pmcmd-Skripts nicht im interaktiven Modus ausführen.
Das folgende UNIX-Shell-Skript überprüft beispielsweise den Status von Integration Service "testService" und falls dieser ausgeführt wird, werden Details für die Sitzung "s_testSessionTask" abgerufen:
#!/usr/bin/bash
# Sample pmcmd script
# Check if the service is alive

pmcmd pingservice -sv testService -d testDomain
if [ "$?" != 0 ]; then

    # handle error

    echo "Could not ping service"

    exit

fi
# Get service properties

pmcmd getserviceproperties -sv testService -d testDomain
if [ "$?" != 0 ]; then

    # handle error

    echo "Could not get service properties"

    exit

fi
# Get task details for session task "s_testSessionTask" of workflow

# "wf_test_workflow" in folder "testFolder"

pmcmd gettaskdetails -sv testService -d testDomain -u Administrator -p adminPass -folder testFolder -workflow wf_test_workflow s_testSessionTask
if [ "$?" != 0 ]; then

    # handle error

    echo "Could not get details for task s_testSessionTask"

    exit

fi

Eingeben von Befehlsoptionen

pmcmd bietet mehrere Möglichkeiten zur Eingabe bestimmter Befehlsoptionen und -argumente. Verwenden Sie beispielsweise zur Eingabe eines Passworts die folgende Syntax:

<<-password|-p> password|<-passwordvar|-pv> passwordEnvVar>
Um ein Passwort einzugeben, stellen Sie dem Passwort die Option -password oder -p voran:
-password ThePassword
or
-p ThePassword
Wenn Sie eine Passwort-Umgebungsvariable verwenden, stellen Sie dem Variablennamen die Option -pv oder ‑passwordvar voran:
-passwordvar PASSWORD
or
-pv PASSWORD
Wenn eine Befehlsoption Leerzeichen enthält, schließen Sie die Option in einfache oder doppelte Anführungszeichen ein. Verwenden Sie zum Beispiel einfache Anführungszeichen in der folgenden Syntax, um den Ordnernamen einzuschließen:
abortworkflow -sv MyIntService -d MyDomain -u seller3 -p jackson ‑f 'quarterly sales' -wait wf_MyWorkflow
Um einen leeren String zu kennzeichnen, verwenden Sie zwei einfache Anführungszeichen (") oder zwei doppelte Anführungszeichen ("").