ServiceNow CLI

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 3 Minuten Lesedauer
  • ServiceNow CLI ist eine Befehlszeilenschnittstelle, mit der Sie Instanzvorgänge von Ihrem lokalen System aus ausführen können. Sie können die CLI um neue Befehle erweitern, die den Anforderungen Ihrer Anwendung entsprechen.

    Vorteile

    Mit ServiceNow CLI können Sie:

    • Führen Sie grundlegende CRUD-Vorgänge für Datensätze in Ihrer -Instanz aus.
    • Entwickeln Sie anwenderdefinierte Komponenten, und stellen Sie sie in Ihrer Instanz bereit, um eine Anwenderoberfläche zu personalisieren.
    • Erstellen Sie anwenderdefinierte Befehle, mit denen Sie anwenderdefinierte Anwendungen über die Befehlszeile verwalten können.
    • Verwenden Sie ServiceNow CLI in Skripts, um Setup-Aufgaben und operative Aktivitäten zu vereinfachen.

    Architektur

    Befehle werden in einer Tabelle in der Instanz gespeichert, mit der Sie verbunden sind. Wenn ServiceNow CLI eine Verbindung zur Instanz herstellt, werden alle verfügbaren Befehle empfangen, die von dieser Instanz unterstützt werden.

    Kommunikations-Flow zwischen ServiceNow CLI und der -Instanz.

    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 aktivieren

    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

    ServiceNow CLI speichert Profilinformationen in einer Datei config.json, die standardmäßig in Ihrem Home-Verzeichnis unter folgendem Pfad gespeichert ist:

    • Linux und Mac: ~/.snc/config.json
    • Windows: %USERPROFILE%\.snc\config.json

    Die CLI verwendet diese Datei, um zu bestimmen, welche Informationen zum Herstellen einer Verbindung mit einer Instanz und mit welchen Einstellungen die Ausgabe generiert werden soll. Standardmäßig verwendet ServiceNow CLI die Einstellungen im Standardprofil, um eine Verbindung zu einer Instanz herzustellen. Um alternative Einstellungen zu verwenden, können Sie zusätzliche benannte Profile erstellen und referenzieren. Weitere Informationen finden Sie unter Ihre ServiceNow CLI -Verbindungsprofile konfigurieren und verwalten.

    Das folgende Beispiel zeigt eine Konfigurationsdatei mit einem Standardprofil und einem benannten Profil. Jedes Profil kann unterschiedliche Anmeldeinformationen verwenden und unterschiedliche 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"
             }
          }
    }
    Hinweis:
    Vertrauliche Anmeldeinformationen werden nur im BS-Schlüsselbund gespeichert, nicht in der Konfigurationsdatei.

    Befehlsstruktur

    ServiceNow CLI -Befehle folgen dieser Struktur:

    1. Der Basisaufruf des SNC- Programms.
    2. Die Befehlsgruppe der obersten Ebene, gefolgt von allen untergeordneten Befehlsgruppen.
    3. Der Befehl, der angibt, welcher Vorgang ausgeführt werden soll.
    4. 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 annehmen, z. B. Zahlen, Zeichenfolgen und JSON-Objekte. Die unterstützten Typen hängen vom angegebenen Befehl ab.

    Argumentwerte

    Viele Argumentwerte in ServiceNow CLI sind 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 Zeichenfolgen, die mindestens ein Leerzeichen enthalten, in Anführungszeichen setzen.

    Ausgabeformate

    ServiceNow CLI unterstützt vier Ausgabeformate:

    • json: Die Ausgabe wird 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 wird 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: admin
    • Text: Die Ausgabe wird als mehrere Zeilen von durch Tabulatoren getrennten Zeichenfolgenwerten formatiert. Verwenden Sie diese Ausgabe mit herkömmlichen UNIX-Texttools wie grep, sed und awk sowie der von PowerShell durchgeführten Textverarbeitung.
      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   yaml
    • table: Die Ausgabe wird als Tabelle formatiert, die die Informationen in einem für Menschen 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   yaml
    • keine: Die CLI gibt die Ausgabe nicht an die Konsole aus. Erfolgs-, Fehler- und Fortschrittsmeldungen werden weiterhin angezeigt.

    Sie können die Befehlsausgabe auf zwei Arten angeben:

    Verwenden Sie die Ausgabeoption in einem benannten Profil in der Konfigurationsdatei
    Im folgenden Beispiel wird das Standardausgabeformat auf Text festgelegt.
    {
        "profiles":{
           "default":{
              "output":"text"
          }
    }
    Verwenden Sie das Argument „--output“ in der Befehlszeile
    Im folgenden Beispiel wird die Ausgabe eines einzelnen Befehls auf JSON festgelegt. Diese Option im Befehl überschreibt jeden derzeit festgelegten Wert in der Konfigurationsdatei.
    $ snc record query --table incident --query ‘active=true’ --output json