ServiceNow CLI
Die ServiceNow CLIIst eine Befehlszeilenschnittstelle, mit der Sie Instanzvorgänge über Ihr lokales System ausführen können. Sie können die CLI erweitern, um neue Befehle einzubeziehen, die den Anforderungen Ihrer Anwendung entsprechen.
Vorteile
Die ServiceNow CLIErmöglicht Ihnen:
- Führen Sie grundlegende CRUD-Vorgänge für Datensätze in Ihrer Instanz durch.
- Entwickeln Sie anwenderdefinierte Komponenten, und stellen Sie sie in Ihrer Instanz bereit, um eine UI zu personalisieren.
- Erstellen Sie anwenderdefinierte Befehle, mit denen Sie anwenderdefinierte Anwendungen über die Befehlszeile verwalten können.
- Verwenden Sie ServiceNow CLIIn Skripts zur Vereinfachung von Setup-Aufgaben und operativen Aktivitäten.
Architektur
Befehle werden in einer Tabelle in der Instanz gespeichert, mit der Sie verbunden sind. Wenn ServiceNow CLIStellt eine Verbindung mit der Instanz her. Sie empfängt alle verfügbaren Befehle, die von dieser Instanz unterstützt werden.
Befehle sind einem REST-Endpunkt zugeordnet, der asynchron ausgeführt wird. Weitere Informationen finden Sie unter Erstellen Sie einen anwenderdefinierten Befehl in ServiceNow CLI.
ServiceNow CLI wird aktiviert
Installieren Sie ServiceNow CLI, indem Sie es von ServiceNow Store anfordern. Besuchen Sie die ServiceNow Store-Website, um alle verfügbaren Apps anzuzeigen und Informationen zum Senden von Anforderungen an den Store zu erhalten. Kumulative Informationen zum Release für alle veröffentlichten Apps finden Sie in den Release-Hinweisen zum ServiceNow Store-Versionsverlauf.
Konfigurationsdatei
Die ServiceNow CLISpeichert Profilinformationen in einem Config.JSON Datei, die standardmäßig in Ihrem Startverzeichnis unter dem folgenden Pfad gespeichert wird:
- Linux und Mac: ~/.snc/config.JSON
- Fenster: %USERPROFILE%\.snc\config.JSON
Die CLI verwendet diese Datei, um zu bestimmen, welche Informationen für die Verbindung mit einer Instanz verwendet werden sollen und welche Einstellungen zum Generieren der Ausgabe verwendet werden sollen. Standardmäßig ist ServiceNow CLIVerwendet die Einstellungen in Standard Profil, um eine Verbindung zu einer Instanz herzustellen. Um alternative Einstellungen zu verwenden, können Sie zusätzliche erstellen und referenzieren Benannt Profile. Weitere Informationen finden Sie unter Konfigurieren und Verwalten von ServiceNow CLIVerbindungsprofile.
Das folgende Beispiel zeigt eine Konfigurationsdatei mit einem Standardprofil und einem benannten Profil. Jedes Profil kann verschiedene Anmeldeinformationen verwenden und verschiedene Hosts und Ausgabeformate angeben.
{
"profiles":{
"default":{
"host":"https://myinstance.service-now.com",
"loginmethod":"basic",
"username":"admin",
"output":"json",
"hostversion":"Paris",
"appversion":"1.0"
},
"user1":{
"host":"https://otherinstance.service-now.com",
"loginmethod":"basic",
"username":"user1",
"output":"yaml",
"hostversion":"Paris",
"appversion":"1.0"
}
}
}Befehlsstruktur
ServiceNow CLI Befehle folgen dieser Struktur:
- Der Basisaufruf an
sncProgramm. - Die Befehlsgruppe der obersten Ebene, gefolgt von allen untergeordneten Befehlsgruppen.
- Der Befehl, der angibt, welchen Vorgang ausgeführt werden soll.
- Allgemeine CLI-Argumente, die für den Vorgang erforderlich sind. Sie können Argumente in beliebiger Reihenfolge angeben.
$ snc <command-group> <command> [arguments]Argumente können verschiedene Arten von Eingabewerten verwenden, z. B. Zahlen, Zeichenfolgen und JSON-Objekte. Die unterstützten Typen hängen vom angegebenen Befehl ab.
Argumentwerte
Viele Argumentwerte in ServiceNow CLISind einfache Zeichenfolgen oder numerische Werte, z. B. die Tabelle und der Tabellenname im folgenden Beispiel.
$ snc record create --table incident --data "{short_description: 'New Incident'}"Sie können Zeichenfolgen, die keine Leerzeichen enthalten, mit Anführungszeichen umgeben oder nicht. Sie müssen jedoch Anführungszeichen um Zeichenfolgen verwenden, die mindestens ein Leerzeichen enthalten.
Ausgabeformate
Die ServiceNow CLIUnterstützt vier Ausgabeformate:
json: Die Ausgabe ist als JSON formatiert. Dies ist der Standard.{ "default": { "appversion": "1.0.8", "host": "https://myinstance.service-now.com", "hostversion": "Paris", "loginmethod": "basic", "output": "json", "username": "admin" }, "user1": { "appversion": "1.0.8", "host": "https://otherinstance.service-now.com", "hostversion": "Paris", "loginmethod": "basic", "output": "yaml", "username": "admin" } }yaml: Die Ausgabe ist als YAML formatiert. Verwenden Sie YAML, um die Ausgabe mit Services und Tools zu verarbeiten, die YAML-formatierte Zeichenfolgen ausgeben oder verbrauchen.default: appversion: 1.0.8 host: https://myinstance.service-now.com hostversion: Paris loginmethod: basic output: json username: admin user1: appversion: 1.0.8 host: https://otherinstance.service-now.com hostversion: Paris loginmethod: basic output: yaml username: adminText: Die Ausgabe ist als mehrere Zeilen mit tabulatorgetrennten Zeichenfolgenwerten formatiert. Verwenden Sie diese Ausgabe mit traditionellen UNIX-Texttools wie grep, sed und awk und der Textverarbeitung, die von PowerShell ausgeführt wird.default https://myinstance.service-now.com Paris 1.0.8 basic admin json user1 https://otherinstance.service-now.com Paris 1.0.8 basic admin yamlTabelle: Die Ausgabe ist als Tabelle formatiert, die die Informationen in einem visuell lesbaren Format darstellt.NAME HOST HOST VERSION APP VERSION LOGIN METHOD USERNAME OUTPUT ------------------------------------------------------------------------------- default myinstance Paris 1.0.8 basic admin json user1 otherinstance Paris 1.0.8 basic admin yamlKeine: Die CLI druckt die Ausgabe nicht an die Konsole. Erfolgs-, Fehler- und Fortschrittsmeldungen werden weiterhin angezeigt.
Sie können die Befehlsausgabe auf zwei Arten angeben:
- Verwenden Sie
AusgabeOption in einem benannten Profil in der Konfigurationsdatei - Im folgenden Beispiel wird das Standardausgabeformat auf Text festgelegt.
{ "profiles":{ "default":{ "output":"text" } } - Verwenden Sie
--AusgabeArgument in der Befehlszeile - Im folgenden Beispiel wird die Ausgabe eines einzelnen Befehls auf JSON festgelegt. Diese Option im Befehl überschreibt alle derzeit in der Konfigurationsdatei festgelegten Werte.
$ snc record query --table incident --query ‘active=true’ --output json