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:
user@host> show rip neighbor ?
Possible completions:
<[Enter]> Execute this command
<name> Name of RIP neighbor
instance Name of RIP instance
logical-system Name of logical system, or 'all'
| Pipe through a command
Im folgenden Beispiel sind die Filter aufgeführt, die Sie mit dem senkrechten Strichsymbol ( | ) verwenden können:
user@host> show interfaces | ?
user@host> show interfaces | ?
Possible completions:
append Append output text to file
count Count occurrences
display Show additional kinds of information
except Show only text that does not match a pattern
find Search for first occurrence of pattern
hold Hold text without exiting the --More-- prompt
last Display end of output only
match Show only text that matches a pattern
no-more Don't paginate output
refresh Refresh a continuous display of the command
request Make system-level requests
resolve Resolve IP addresses
save Save output text to file
tee Write to standard output and file
trim Trim specified number of columns from start of line
Nur für den show configuration Befehl können Sie das Pipe-Symbol und das Fragezeichen kombinieren, um einen zusätzlichen Vergleichsfilter anzuzeigen:
user@host> show configuration | ?
Possible completions:
compare Compare configuration changes with prior version
...
Sie können jeden der Rohrfilter in Kombination eingeben. Zum Beispiel:
user@host>command | match regular-expression | save filename
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.
| 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:
user@host> show chassis hardware
Hardware inventory:
Item Version Part number Serial number Description
Chassis JN0000000AJD JNP10003-160C [PTX10003-160C]
Routing Engine 0 Control Board
FPC 1 BUILTIN BUILTIN FPC-JNP10003-LOGICAL
PIC 0 BUILTIN BUILTIN 4x400G/10x200G/20x100G
Xcvr 0 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 1 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 2 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 3 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 4 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 5 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 6 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 7 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 8 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 9 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
PIC 1 BUILTIN BUILTIN 4x400G/10x200G/20x100G
Xcvr 0 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 1 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 2 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 3 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 4 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 5 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 6 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 7 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 8 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 9 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
SIB 0 BUILTIN BUILTIN SIB-JNP10003
SIB 1 BUILTIN BUILTIN SIB-JNP10003
Ein Pipe-Filter von | match "PIC" zeigt die folgende Ausgabe an:
PIC 0 BUILTIN BUILTIN 4x400G/10x200G/20x100G PIC 1 BUILTIN BUILTIN 4x400G/10x200G/20x100G
Ein Pipe-Filter von | except "PIC" zeigt die folgende Ausgabe an:
Hardware inventory:
Item Version Part number Serial number Description
Chassis JN0000000AJD JNP10003-160C [PTX10003-160C]
Routing Engine 0 Control Board
FPC 1 BUILTIN BUILTIN FPC-JNP10003-LOGICAL
Xcvr 0 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 1 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 2 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 3 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 4 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 5 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 6 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 7 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 8 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 9 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 0 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 1 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 2 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 3 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 4 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 5 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 6 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 7 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 8 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
Xcvr 9 REV 01 740-058732 1DJQA042004 QSFP-100GBASE-LR4
SIB 0 BUILTIN BUILTIN SIB-JNP10003
SIB 1 BUILTIN BUILTIN SIB-JNP10003
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
- Beispiele für Konfigurationen und ihre Unterschiede in XML
- Beispiel für das Zählen der Anzahl der Ausgabezeilen
- Beispiel für die Anzeige der Ausgabe im XML-Tag-Format
- Beispiel für die Anzeige statischer Konfigurationsdaten
- Beispiel für die Anzeige der Ausgabe im JSON-Format
- Beispiel für die Anzeige der Konfiguration mit angewendeten YANG-Übersetzungsskripten
- Beispiel für die Anzeige der RPC-Tags für einen Befehl
- Beispiel für das Ignorieren einer Ausgabe, die nicht mit einem regulären Ausdruck übereinstimmt
- Beispiel für die Anzeige der Ausgabe aus der ersten Übereinstimmung eines regulären Ausdrucks
- Beispiel für die Beibehaltung der Ausgabe nach dem letzten Bild
- Beispiel für die Anzeige der Ausgabe, beginnend mit den letzten Einträgen
- Beispiel für die Anzeige einer Ausgabe, die mit einem regulären Ausdruck übereinstimmt
- Beispiel für das Verhindern der Paginierung der Ausgabe
- Beispiel für das Senden einer Befehlsausgabe an andere Benutzer
- Beispiel für die Auflösung von IP-Adressen
- Beispiel für das Speichern der Ausgabe in einer Datei
- Beispiel für das Anhängen der Ausgabe an eine Datei
- Beispiel für die Anzeige der Ausgabe auf dem Bildschirm und das Schreiben in eine Datei
- Beispiel für das Kürzen der Ausgabe durch Angabe der Startspalte
- Beispiel für das Aktualisieren der Ausgabe eines Befehls
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 :
show | compare [rollback n | filename]
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:
user@host> show configuration system | compare rollback 9
[edit system]
+ host-name device;
+ backup-router 192.168.71.254;
- ports {
- console log-out-on-disconnect;
- }
[edit system name-server]
+ 172.17.28.11;
172.17.28.101 { ... }
[edit system name-server]
172.17.28.101 { ... }
+ 172.17.28.100;
+ 172.17.28.10;
[edit system]
- scripts {
- commit {
- allow-transients;
- }
- }
+ services {
+ ftp;
+ rlogin;
+ rsh;
+ telnet;
+ }
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:
[edit groups] - group_xmp; - group_cmp; - group_grp;
In früheren Versionen sah die Ausgabe des show | compare Befehls wie folgt aus:
[edit groups] - group_xmp; - group_cmp; - group_grp; + group_xmp; + group_grp; + group_cmp;
Die Ausgabe des show | compare Befehls sieht nun wie folgt aus:
[edit groups]
group_xmp {...}
! group_grp {...}
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:
user@host> show configuration | compare | display xml
Beispiel im Konfigurationsmodus:
[edit]
user@host# show | compare | display xml
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:
user@host> show configuration | count
Count: 269 lines
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:
user@host> show cli directory | display xml
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/21.2R0/junos">
<cli>
<working-directory>/var/home/regress</working-directory>
</cli>
<cli>
<banner></banner>
</cli>
</rpc-reply>
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.
user@host> show configuration | display inheritance
## Last commit: 2018-03-29 15:54:17 PDT
version 16.2R2;
system {
...
}
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:
user@host> show cli directory | display json
{
"cli" : [
{
"working-directory" : [
{
"data" : "/var/home/username"
}
]
}
]
}
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:
user@host> show configuration | display translation-scripts
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.
user@host> show configuration | display translation-scripts translated-config
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.
user@host# show | display-translation-scripts (configured-delta | translated-config | translated-delta)
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.
user@host# show
...
myint:intconfig {
interfaces {
interface et-0/0/0 {
config {
description test;
}
}
}
}
...
user@host# show | display translation-scripts
...
interfaces {
et-0/0/0 {
description test;
gigether-options {
no-flow-control;
}
}
}
...
myint:intconfig {
interfaces {
interface et-0/0/0 {
config {
description test;
}
}
}
}
...
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:
user@host> show route | display xml rpc
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/10.1I0/junos">
<rpc>
<get-route-information>
</get-route-information>
</rpc>
<cli>
<banner></banner>
</cli>
</rpc-reply>
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:
user@host> show system users | except root
8:28PM up 1 day, 13:59, 2 users, load averages: 0.01, 0.01, 0.00
USER TTY FROM LOGIN@ IDLE WHAT
user p0 device1.example.com 7:25PM - cli
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:
user@host> show route | find 208.197.169.0
208.197.169.0/24 *[Static/5] 1d 13:22:11
> to 192.168.4.254 via et-3/0/0.0
224.0.0.5/32 *[OSPF/10] 1d 13:22:12, metric 1
iso.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
47.0005.80ff.f800.0000.0108.0001.1921.6800.4015.00/160
*[Direct/0] 1d 13:22:12
> via lo0.0
Im folgenden Beispiel wird der erste CCC-Eintrag in der Weiterleitungstabelle angezeigt:
user@host> show route forwarding-table | find ccc
Routing table: ccc
MPLS:
Interface.Label Type RtRef Nexthop Type Index NhRef Netif
default perm 0 rjct 3 1
0 user 0 recv 5 2
1 user 0 recv 5 2
32769 user 0 ucst 45 1 et-0/0/0.534
et-0/0/0. (CCC) user 0 indr 44 2
10.0.16.2 Push 32768, Push
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:
user@host> show log log-file-1 | hold
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:
user@host> show log log-file-1 | last
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:
user@host> show configuration | match xe-
xe-2/1/0 {
xe-2/1/1 {
xe-2/2/0 {
xe-5/2/0 {
xe-5/3/0 {
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:
user@host> show configuration | no-more
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:
user@host> show interfaces | request message user root@ttyp1
Der Benutzer root@ttyp1 sieht die folgende Ausgabe auf dem Terminalbildschirm:
Message from user@host on /dev/ttyp0 at 10:32 PST... Physical interface: dsc, Enabled, Physical link is Up Interface index: 5, SNMP ifIndex: 5 Type: Software-Pseudo, MTU: Unlimited...
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:
user@host> show ospf neighbors | resolve
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:
user@host> request support information | save my-support-info.txt
Wrote 1143 lines of output to ‘my-support-info.txt’
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:
user@host> request support information | append my-support-info.txt
Wrote 2247 lines of output to 'my-support-info.txt'
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:
user@host> show interfaces et-* terse | tee et-interfaces.txt
Interface Admin Link Proto Local Remote
et-0/1/0 up down
et-0/1/1 up up
et-0/1/2 up down
et-0/1/3 up up
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).
user@host> show interfaces et-* terse | tee /home/user/test.txt
error: tee failed: file /home/user/test.txt could not be opened
user@host>
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:
user@host> show system storage | trim 11
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:
user@host> show interfaces | refresh 5
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.
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:
user@host> show interfaces vtep Physical interface: vtep, Enabled, Physical link is Up Interface index: 133, SNMP ifIndex: 517 Type: Software-Pseudo, Link-level type: VxLAN-Tunnel-Endpoint, MTU: Unlimited, Speed: Unlimited Device flags : Present Running Interface flags: SNMP-Traps Link type : Full-Duplex Link flags : None Last flapped : Never Input packets : 0 Output packets: 0
Ein Pipe-Filter von
| suppress-zeroszeigt die folgende Ausgabe an:user@host> show interfaces vtep | suppress-zeros Physical interface: vtep, Enabled, Physical link is Up Interface index: 133, SNMP ifIndex: 517 Type: Software-Pseudo, Link-level type: VxLAN-Tunnel-Endpoint, MTU: Unlimited, Speed: Unlimited Device flags : Present Running Interface flags: SNMP-Traps Link type : Full-Duplex Link flags : None Last flapped : Never
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:
user@host> show interfaces fxp0 Physical interface: fxp0, Enabled, Physical link is Up Interface index: 8, SNMP ifIndex: 1 Description: 0 Type: Ethernet, Link-level type: Ethernet, MTU: 1514, Speed: 1000mbps Device flags : Present Running Interface Specific flags: Internal: 0x100000 Interface flags: SNMP-Traps Link type : Full-Duplex Link flags : 0x4 Current address: 54:04:0a:dd:85:8d, Hardware address: 54:04:0a:dd:85:8d Last flapped : 2023-11-15 19:02:00 IST (21:40:35 ago) Input packets : 1530766 Output packets: 13469 Logical interface fxp0.0 (Index 5) (SNMP ifIndex 13) Flags: Up SNMP-Traps 0x4000000 Encapsulation: ENET2 Input packets : 1528251 Output packets: 13481 Protocol inet, MTU: 1500 Max nh cache: 75000, New hold nh limit: 75000, Curr nh cnt: 186, Curr new hold cnt: 0, NH drop cnt: 0 Flags: Sendbcast-pkt-to-re, Is-Primary Addresses, Flags: Is-Preferred Is-Primary Destination: 10.221.128/18, Local: 10.221.133.141, Broadcast: 10.221.191.255Ein Pipe-Filter von
| suppress-zeroszeigt die folgende Ausgabe an:user@host> show interfaces fxp0 | suppress-zeros Physical interface: fxp0, Enabled, Physical link is Up Interface index: 8, SNMP ifIndex: 1 Description: 0 Type: Ethernet, Link-level type: Ethernet, MTU: 1514, Speed: 1000mbps Device flags : Present Running Interface Specific flags: Internal: 0x100000 Interface flags: SNMP-Traps Link type : Full-Duplex Link flags : 0x4 Current address: 54:04:0a:dd:85:8d, Hardware address: 54:04:0a:dd:85:8d Last flapped : 2023-11-15 19:02:00 IST (21:40:35 ago) Input packets : 1530766 Output packets: 13469 Logical interface fxp0.0 (Index 5) (SNMP ifIndex 13) Flags: Up SNMP-Traps 0x4000000 Encapsulation: ENET2 Input packets : 1528251 Output packets: 13481 Protocol inet, MTU: 1500 Max nh cache: 75000, New hold nh limit: 75000, Curr nh cnt: 186, Curr new hold cnt: 0, NH drop cnt: 0 Flags: Sendbcast-pkt-to-re, Is-Primary Addresses, Flags: Is-Preferred Is-Primary Destination: 10.221.128/18, Local: 10.221.133.141, Broadcast: 10.221.191.255In diesem Beispiel wird das
DescriptionFeld in der Ausgabe nicht maskiert, da es sich um einen Zeichenfolgentyp und eine Nicht-Ganzzahl handelt. DieMax nh cache: 75000, New hold nh limit: 75000, Curr nh cnt: 186, Curr new hold cnt: 0, NH drop cnt: 0Zeile 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.
compact Anweisung auf Hierarchieebene
[edit system export-format state-data json] veraltet.