Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Filtern der Betriebsbefehlsausgabe

Mit dem Pipe-Symbol | können Sie (der Netzwerkadministrator) die Befehlsausgabe sowohl im Betriebs- als auch im Konfigurationsmodus filtern.

Informationen zur Verwendung der Pipe ( | ) Symbol, um die Befehlsausgabe zu filtern

Sie können die Befehlsausgabe filtern, indem Sie bei der Eingabe des Befehls das Pipe-Symbol ( | ) hinzufügen.

Beispiel:

Im folgenden Beispiel sind die Filter aufgeführt, die Sie mit dem senkrechten Strichsymbol ( | ) verwenden können:

Nur für den show configuration Befehl können Sie das Pipe-Symbol und das Fragezeichen kombinieren, um einen zusätzlichen Vergleichsfilter anzuzeigen:

Sie können jeden der Rohrfilter in Kombination eingeben. Zum Beispiel:

Hinweis:

In diesem Thema werden nur die Filter beschrieben, die Sie für die Befehlsausgabe im Betriebsmodus verwenden können.

Beispiel: Verwenden Sie reguläre Ausdrücke mit der senkrechten Kante ( | ) Symbol, um die Befehlsausgabe zu filtern

Sie verwenden die exceptFilter , find, und match mit dem senkrechten Winkelsymbol, um reguläre Ausdrücke zum Filtern der Ausgabe zu verwenden. Juniper Networks verwendet die regulären Ausdrücke, wie in POSIX 1003.2 definiert. Wenn ein regulärer Ausdruck Leerzeichen, Operatoren oder Platzhalterzeichen enthält, schließen Sie den Ausdruck in Anführungszeichen ein.

Tabelle 1: Allgemeine Operatoren für reguläre Ausdrücke in Betriebsmodusbefehlen

Betreiber

Funktion

|

Gibt an, dass eine Übereinstimmung einer der beiden Begriffe auf beiden Seiten der Pipe sein kann.

^

Wird am Anfang eines Ausdrucks verwendet, um anzugeben, wo eine Übereinstimmung beginnen soll.

$

Wird am Ende eines Ausdrucks verwendet, um anzugeben, dass ein Begriff genau bis zum Punkt des $-Zeichens übereinstimmen muss.

[ ]

Gibt einen Bereich von Buchstaben oder Ziffern an, mit dem abgeglichen werden soll. Um den Anfang und das Ende eines Bereichs zu trennen, verwenden Sie einen Bindestrich ( - ).

( )

Gibt eine Gruppe von Begriffen an, die übereinstimmen sollen.

Zum Beispiel, wenn ein Befehl die folgende Ausgabe erzeugt:

Ein Pipe-Filter von | match "PIC" zeigt die folgende Ausgabe an:

Ein Pipe-Filter von | except "PIC" zeigt die folgende Ausgabe an:

Beispiel: Pipe ( | ) Filterfunktionen in der Befehlszeilenschnittstelle

In diesem Thema werden die Pipe-Filterfunktionen ( | ), die von der Junos OS Evolved CLI unterstützt werden, beschrieben und bereitgestellt.

Beispiele für Konfigurationen und ihre Unterschiede im Text

Der compare Filter vergleicht die Kandidatenkonfiguration entweder mit der aktuellen festgeschriebenen Konfiguration oder einer Konfigurationsdatei. Außerdem werden die Unterschiede zwischen den beiden Konfigurationen mit Textzeichen angezeigt.

Um Konfigurationsdateien zu vergleichen, geben Sie nach dem Pipe-Symbol ( | ) wie folgt ein compare :

Die rollback n Variable ist der Index für die Liste der zuvor festgeschriebenen Konfigurationen. Die zuletzt gespeicherte Konfiguration ist 0. Wenn Sie keine Argumente angeben, wird die Kandidatenkonfiguration mit der aktiven Konfigurationsdatei (/config/juniper.conf) verglichen, was dem Vergleich mit rollback Index 0 entspricht.

Der vollständige Pfad (oder URL) zu einer Konfigurationsdatei lautet filename.

Die Vergleichsausgabe verwendet die folgenden Konventionen:

  • Aussagen, die sich nur in der Kandidatenkonfiguration befinden, werden mit einem Pluszeichen (+) vorangestellt.

  • Anweisungen, die nur in der Vergleichsdatei enthalten sind, wird ein Minuszeichen (–) vorangestellt.

  • Unveränderten Anweisungen wird ein einzelnes Leerzeichen ( ) vorangestellt.

Beispiel:

Wir haben die Ausgabe des show | compare Befehls verbessert, um Konfigurationsänderungen genauer widerzuspiegeln. Diese Erweiterung beinhaltet eine intelligentere Behandlung von Auftragsänderungen in Listen. Betrachten Sie beispielsweise Gruppennamen, die wie folgt neu angeordnet werden:

In früheren Versionen sah die Ausgabe des show | compare Befehls wie folgt aus:

Die Ausgabe des show | compare Befehls sieht nun wie folgt aus:

Beispiele für Konfigurationen und ihre Unterschiede in XML

Der compare | display xml Filter vergleicht die Kandidatenkonfiguration mit der aktuellen festgeschriebenen Konfiguration und zeigt die Unterschiede zwischen den beiden Konfigurationen in XML an. Um Konfigurationen zu vergleichen, geben compare | display xml Sie nach dem Pipe-Symbol ( | ) entweder im Betriebs- oder im Konfigurationsmodus ein.

Beispiel im Betriebsmodus:

Beispiel im Konfigurationsmodus:

Sie können eine bestimmte Konfigurationshierarchie eingeben, bevor Sie den | compare Befehl verwenden. Im Konfigurationsmodus können Sie zu einer Hierarchie navigieren, in der der Befehl angewendet wird.

Beispiel für das Zählen der Anzahl der Ausgabezeilen

Um die Anzahl der Zeilen in der Befehlsausgabe zu zählen, geben Sie nach dem Pipe-Symbol ( | ) ein count . Zum Beispiel:

Beispiel für die Anzeige der Ausgabe im XML-Tag-Format

Um die Befehlsausgabe im XML-Tag-Format anzuzeigen, geben Sie nach dem Pipe-Symbol ( | ) ein display xml .

Im folgenden Beispiel wird die show cli directory Befehlsausgabe als XML-Tags angezeigt:

Wenn die Konfigurationsdaten oder die Befehlsausgabe Zeichen enthalten, die außerhalb des 7-Bit-ASCII-Zeichensatzes liegen, zeigt die CLI die entsprechende UTF-8-Dezimalzeichenreferenz für diese Zeichen in der XML-Ausgabe an.

Beispiel für die Anzeige statischer Konfigurationsdaten

Sie können die geerbten Konfigurationsdaten und Informationen über die Quellgruppe, von der die Konfiguration in Bezug auf die statische Konfigurationsdatenbank geerbt wurde, anzeigen. Um diese Daten anzuzeigen, geben Sie den show configuration | display inheritance Befehl ein.

Beispiel für die Anzeige der Ausgabe im JSON-Format

Sie können die Konfiguration oder Befehlsausgabe im JSON-Format (JavaScript Object Notation) anzeigen, indem Sie nach dem senkrechten Strichsymbol ( | ) eingeben display json .

Im folgenden Beispiel wird die show cli directory Befehlsausgabe im JSON-Format angezeigt:

Wenn die Ausgabe des Betriebsbefehls Zeichen enthält, die außerhalb des 7-Bit-ASCII-Zeichensatzes liegen, zeigt die CLI die entsprechende UTF-8-Dezimalzeichenreferenz für diese Zeichen in der JSON-Ausgabe an.

Beispiel für die Anzeige der Konfiguration mit angewendeten YANG-Übersetzungsskripten

Sie können YANG-Module auf Geräte laden, auf denen Junos OS Evolved ausgeführt wird, um die Konfigurationshierarchie um Datenmodelle zu erweitern, die Junos OS Evolved nicht nativ unterstützt. Junos OS Evolved unterstützt die Übersetzung dieser Modelle. Die aktiven Konfigurationen und Kandidatenkonfigurationen enthalten die Konfigurationsdaten für nicht native YANG-Datenmodelle in der von diesem Modell definierten Syntax. Diese Konfigurationen zeigen nicht explizit die entsprechende übersetzte Junos OS Evolved-Syntax an, die als vorübergehende Änderung festgeschrieben wird.

Der | display translation-scripts Filter zeigt die vollständige Konfiguration nach der Vererbung an, wobei die übersetzten Konfigurationsdaten aus allen aktivierten Übersetzungsskripten explizit in der Ausgabe enthalten sind. Um die Konfiguration mit allen aktivierten YANG-Übersetzungsskripten anzuzeigen, fügen Sie den | display translation-scripts Filter an den show configuration Befehl im Betriebsmodus oder den show Befehl im Konfigurationsmodus an. Zum Beispiel:

Um nur die nicht nativen Konfigurationsdaten nach der Übersetzung anzuzeigen, verwenden Sie den | display translation-scripts translated-config Filter entweder im Betriebsmodus oder im Konfigurationsmodus.

Im Konfigurationsmodus können Sie nur die Konfigurationsunterschiede in den Hierarchien anzeigen, die den nicht-nativen YANG-Datenmodellen entsprechen, bevor oder nachdem Übersetzungsskripte angewendet werden. Um diese Unterschiede anzuzeigen, fügen Sie das Schlüsselwort , translated-config bzwtranslated-delta. an configured-deltaden show | display translation-scripts Befehl an. In diesen Fällen zeigt die XML-Ausgabe die gelöschten Konfigurationsdaten an, gefolgt von den neuen Konfigurationsdaten.

Das folgende Beispiel zeigt eine Beispielkonfiguration mit und ohne angewendete Übersetzungsskripts. Der show Befehl zeigt die Konfiguration an, die die nicht nativen Konfigurationsdaten in der vom YANG-Datenmodell definierten Syntax enthält. Der | display translation-scripts Filter zeigt die nicht nativen Konfigurationsdaten sowohl in der vom YANG-Datenmodell definierten Syntax als auch in der übersetzten Junos OS Evolved-Syntax an. Beide Befehle zeigen die gesamte Konfiguration an, die in diesem Beispiel aus Gründen der Kürze gekürzt wurde. Der show Befehl gibt jedoch die Konfiguration vor der Vererbung zurück, während der Befehl die Konfiguration nach der show | display translation-scripts Vererbung zurückgibt.

Beispiel für die Anzeige der RPC-Tags für einen Befehl

Um die RPC-XML-Tags (Remote Procedure Call) für einen Betriebsmodusbefehl anzuzeigen, geben Sie nach dem Pipe-Symbol ( | ) ein display xml rpc .

Im folgenden Beispiel werden die RPC-Tags für den show route Befehl angezeigt:

Beispiel für das Ignorieren einer Ausgabe, die nicht mit einem regulären Ausdruck übereinstimmt

Um Text zu ignorieren, der einem regulären Ausdruck entspricht, geben Sie den except Befehl nach dem senkrechten Strichsymbol ( | ) an. Wenn der reguläre Ausdruck Leerzeichen, Operatoren oder Platzhalterzeichen enthält, schließen Sie ihn in Anführungszeichen ein.

Im folgenden Beispiel werden alle Benutzer angezeigt, die am Router angemeldet sind, mit Ausnahme des Benutzers root:

Beispiel für die Anzeige der Ausgabe aus der ersten Übereinstimmung eines regulären Ausdrucks

Um die Ausgabe ab dem ersten Vorkommen von Text anzuzeigen, der einem regulären Ausdruck entspricht, geben Sie nach dem Pipe-Symbol ( | ) ein find . Wenn der reguläre Ausdruck Leerzeichen, Operatoren oder Platzhalterzeichen enthält, schließen Sie ihn in Anführungszeichen ein.

Im folgenden Beispiel werden die Routen in der Routing-Tabelle beginnend mit der IP-Adresse 208.197.169.0angezeigt:

Im folgenden Beispiel wird der erste CCC-Eintrag in der Weiterleitungstabelle angezeigt:

Beispiel für die Beibehaltung der Ausgabe nach dem letzten Bild

Sie können die Ausgabe beibehalten und scrollen oder durchsuchen, indem Sie die CLI-Eingabeaufforderung gedrückt halten, anstatt sofort zur CLI-Eingabeaufforderung zurückzukehren, nachdem Sie den letzten Ausgabebildschirm angezeigt haben. Um die Ausgabe beizubehalten, geben Sie nach dem Pipe-Symbol ( | ) ein hold . Das folgende Beispiel verhindert, dass Sie zur CLI-Eingabeaufforderung zurückkehren, nachdem Sie den letzten Bildschirm der Ausgabe des show log log-file-1 Befehls angezeigt haben:

Beispiel für die Anzeige der Ausgabe, beginnend mit den letzten Einträgen

Sie können Protokolldateien anzeigen, in denen das Ende der Datei die neuesten Einträge enthält. Um Text ab dem Ende der Ausgabe anzuzeigen, geben Sie nach dem Pipe-Symbol ( | ) ein last <lines> .

Im folgenden Beispiel werden die letzten Einträge in der Datei log-file-1 angezeigt:

Hinweis:

Wenn die Anzahl der angeforderten Zeilen kleiner ist als die Anzahl der Zeilen, die die Einstellung der Bildlänge zulässt, gibt das System eine Teilmenge zurück. Das System gibt so viele Zeilen zurück, wie die Einstellung der Bildlänge zulässt. Das heißt, wenn Ihre Bildschirmlänge auf 20 Zeilen eingestellt ist und Sie nur die letzten 10 Zeilen angefordert haben, gibt das System die letzten 19 Zeilen anstelle der letzten 10 Zeilen zurück.

Beispiel für die Anzeige einer Ausgabe, die mit einem regulären Ausdruck übereinstimmt

Um eine Ausgabe anzuzeigen, die einem regulären Ausdruck entspricht, geben Sie nach dem Pipe-Symbol ( | ) ein match regular-expression . Wenn der reguläre Ausdruck Leerzeichen, Operatoren oder Platzhalterzeichen enthält, schließen Sie ihn in Anführungszeichen ein.

Das folgende Beispiel entspricht allen 10-Gigabit-Ethernet-Schnittstellen (xe) in der Konfiguration:

Beispiel für das Verhindern der Paginierung der Ausgabe

Wenn die Ausgabe länger als die Länge des Terminalbildschirms ist, erhalten Sie standardmäßig eine ---(more)--- Meldung, dass die verbleibende Ausgabe angezeigt wird. Um die verbleibende Ausgabe anzuzeigen, drücken Sie die Leertaste.

Um eine Paginierung der Ausgabe zu verhindern, geben Sie nach dem Pipe-Symbol ( | ) ein no-more .

Im folgenden Beispiel wird die Ausgabe des show configuration Befehls auf einmal angezeigt:

Diese Funktion ist nützlich, wenn Sie die gesamte Ausgabe kopieren und in eine E-Mail-Nachricht einfügen möchten.

Beispiel für das Senden einer Befehlsausgabe an andere Benutzer

Um die Befehlsausgabe auf dem Terminal eines bestimmten Benutzers, der an Ihrem Router angemeldet ist, oder auf den Terminals aller an Ihrem Router angemeldeten Benutzer anzuzeigen, geben Sie nach dem Pipe-Symbol ( | ) einrequest terminalmessage (all | user @account).

Wenn Sie Probleme mit Ihrem Router beheben und mit einem Kundendienstmitarbeiter telefonieren, können Sie die Befehlsausgabe teilen. Sie verwenden den request message Befehl, um Ihrem Vertreter die Befehlsausgabe zu senden, die Sie gerade auf Ihrem Terminal anzeigen.

Im folgenden Beispiel wird die Ausgabe des Befehls, den show interfaces Sie auf Ihrem Terminal eingeben, an das Terminal des Benutzers root@ttyp1gesendet:

Der Benutzer root@ttyp1 sieht die folgende Ausgabe auf dem Terminalbildschirm:

Beispiel für die Auflösung von IP-Adressen

Nur im Betriebsmodus, wenn die Ausgabe eines Befehls eine nicht aufgelöste IP-Adresse anzeigt, können Sie nach dem Befehl eingeben | resolve , um den mit der IP-Adresse verknüpften Namen anzuzeigen. Der resolve Filter ermöglicht es dem System, eine umgekehrte DNS-Suche der IP-Adresse durchzuführen. Wenn DNS nicht aktiviert ist, schlägt die Suche fehl, und es wird keine Ersetzung durchgeführt.

Um einen Reverse-DNS-Lookup einer nicht aufgelösten IP-Adresse durchzuführen, geben Sie nach dem Pipe-Symbol ( | ) ein resolve <full-names> . Wenn Sie die full-names Option nicht angeben, wird der Name abgeschnitten, damit er den für die IP-Adresse geltenden Einschränkungen der Feldbreite entspricht.

Im folgenden Beispiel wird eine DNS-Suche für alle nicht aufgelösten IP-Adressen in der Ausgabe des show ospf neighbors Befehls durchgeführt:

Beispiel für das Speichern der Ausgabe in einer Datei

Wenn die Befehlsausgabe zu lang ist, wenn Sie die Ausgabe speichern oder analysieren müssen oder wenn Sie die Ausgabe in einer E-Mail-Nachricht oder per FTP senden müssen, können Sie die Ausgabe in einer Datei speichern. Standardmäßig wird die Datei in Ihrem Home-Verzeichnis auf dem Router abgelegt.

Um die Befehlsausgabe in einer Datei zu speichern, geben save filename Sie nach dem Pipe-Symbol ( | ) ein.

Im folgenden Beispiel wird die Ausgabe des request support information Befehls in einer Datei mit dem Namen my-support-info.txt gespeichert:

Beispiel für das Anhängen der Ausgabe an eine Datei

Wenn die Befehlsausgabe angezeigt wird, können Sie die Ausgabe entweder in einer Datei speichern, die den vorhandenen Inhalt dieser Datei überschreibt, oder Sie können den Ausgabetext an eine bestimmte Datei anhängen.

Um die Befehlsausgabe an die Datei anzuhängen, geben Sie nach dem Pipe-Symbol ( | ) ein append filename .

Im folgenden Beispiel wird die Ausgabe des request support information Befehls an eine Datei mit dem Namen my-support-info.txt angefügt:

Beispiel für die Anzeige der Ausgabe auf dem Bildschirm und das Schreiben in eine Datei

Wenn die Befehlsausgabe angezeigt wird, können Sie die Ausgabe auch in eine Datei schreiben. Um die Ausgabe sowohl anzuzeigen als auch in eine Datei zu schreiben, geben Sie nach dem Pipe-Symbol (|) ein tee filename .

Im folgenden Beispiel wird die Ausgabe des show interfaces et-* terse Befehls (mit Informationen über den Status der Gigabit-Ethernet-Schnittstellen auf dem Gerät) angezeigt und in eine Datei mit dem Namen et-interfaces.txt umgeleitet:

Im Gegensatz zum UNIX-Befehl tee wird nur eine Fehlermeldung angezeigt, wenn die Datei nicht geöffnet werden kann (anstatt die Ausgabe und dann die Fehlermeldung anzuzeigen).

Beispiel für das Kürzen der Ausgabe durch Angabe der Startspalte

Die Ausgabe wird auf dem Terminalbildschirm in Form von Zeilen und Spalten angezeigt. Das erste alphanumerische Zeichen, das links auf dem Bildschirm beginnt, befindet sich in Spalte 1, das zweite Zeichen in Spalte 2 usw. Um die Ausgabe ab einer bestimmten Spalte anzuzeigen (und damit den äußersten linken Teil der Ausgabe zu kürzen), geben trim columns Sie nach dem Pipe-Symbol ( | ) ein. Der trim Filter ist nützlich, um das Datum und die Uhrzeit vom Anfang der Systemprotokollmeldungen an zu kürzen.

Im folgenden Beispiel wird die Ausgabe des show system storage Befehls angezeigt, wobei die ersten 10 Spalten herausgefiltert werden:

Hinweis:

Der trim Befehl akzeptiert keine negativen Werte.

Beispiel für das Aktualisieren der Ausgabe eines Befehls

Sie können einen Betriebsmodusbefehl mit der | refresh Option Pipe ausführen, um die auf dem Bildschirm angezeigte Ausgabe regelmäßig zu aktualisieren. Die Standardaktualisierung erfolgt jede Sekunde. Sie können jedoch auch explizit ein Aktualisierungsintervall von 1 bis 604.800 Sekunden angeben. Um beispielsweise die Ausgabe des show interfaces Befehls alle 5 Sekunden zu aktualisieren, führen Sie den folgenden Befehl aus:

Verwenden Sie den Suppress-Zero-Filter mit der Pipe ( | ) Symbol zum Filtern von Nullwerten in der Befehlsausgabe

Junos OS unterstützt suppress-zero Filter, um Zeilen mit "0"-Werten für eines der Felder in einer bestimmten Zeile auszuschließen. Diese Funktion ist für alle operationellen show-Befehle verfügbar. Für die CLI-Ausgabe von show-Befehlen können Zeilen mit '0'-Werten maskiert werden. Die Ausgabezeilen mit Werten ungleich Null werden angezeigt. Sie können dies verwenden, um die Werte von Nullzählern zu maskieren. Wenn eine Zeile Werte ungleich Null zusammen mit "0"-Werten in einer Zeile enthält, wird sie nicht maskiert. Wenn '0' in der Beschreibung oder im Zeichenfolgenfeld angezeigt wird, wird es nicht maskiert und in der CLI-Ausgabe ausgegeben.

Hinweis:

Diese Funktion gilt nur für CLI-Betriebsbefehle. Der suppress-zeros Filter gilt nicht für Befehle, die kein Rendering verwenden. Zum Beispiel show configuration, tracerouteping und andere Monitorbefehle.

Hier sind einige Beispiele für die show-Befehle mit suppress-zeroes filter:

  • Zum Beispiel, wenn ein Befehl die folgende Ausgabe erzeugt:

    Ein Pipe-Filter von | suppress-zeros zeigt die folgende Ausgabe an:

    In diesem Beispiel werden die Felder Eingabepakete und Ausgabepakete maskiert, da diese Felder ganzzahlige Werte vom Typ "0" enthalten.

  • Wenn ein Befehl die folgende Ausgabe erzeugt:

    Ein Pipe-Filter von | suppress-zeros zeigt die folgende Ausgabe an:

    In diesem Beispiel wird das Description Feld in der Ausgabe nicht maskiert, da es sich um einen Zeichenfolgentyp und eine Nicht-Ganzzahl handelt. Die Max nh cache: 75000, New hold nh limit: 75000, Curr nh cnt: 186, Curr new hold cnt: 0, NH drop cnt: 0 Zeile wird nicht maskiert, da sie ganzzahlige Zählerwerte ungleich Null enthält.

Tabellarischer Änderungsverlauf

Die Unterstützung der Funktion hängt von der Plattform und der Version ab, die Sie benutzen. Verwenden Sie den Feature-Explorer , um festzustellen, ob eine Funktion auf Ihrer Plattform unterstützt wird.

Veröffentlichung
Beschreibung
24.4R1-EVO
Ab Junos OS Evolved Version 24.4R1 ist die compact Anweisung auf Hierarchieebene [edit system export-format state-data json] veraltet.