Die einfache Antwort lautet: Für eine Eins-zu-Eins-Zuordnung von IOS zu NX-OS sieht es folgendermaßen aus:
IOS : show run | inc (interface Vlan)|(ip address)
NX-OS : show run | inc 'interface Vlan|ip address'
Beachten Sie, dass dies sinnvoller ist, wenn Sie die zusätzlichen Parens im Original weglassen:
show run | inc (interface Vlan|ip address)
Der Schlüssel in diesem Beispiel ist, dass bei NX-OS die Parens durch Anführungszeichen ersetzt werden.
Sie können auch doppelte Anführungszeichen verwenden, z ""
.
NX-OS basiert auf Linux [1] und verwendet eine * nix-ähnliche Engine für reguläre Ausdrücke. Die Befehle sind ungerade und bestehen aus englischen Formulierungen und Standard-Regex-Redewendungen.
Zum Beispiel würde das, was egrep -v
in Bash wäre, so aussehen. egrep ignore-case
In der Befehlszeile würde dies ungefähr so aussehen
show run | egrep ignore-case vpc
oder
show run | inc ignore-case vpc
Ein Beispiel für die Ausführlichkeit (und Stärke) der neuen Regex-Funktionen:
show run | egrep ignore-case vpc | egrep invert-match ignore-case peer
Dies wäre gleichbedeutend mit einer Bash-Shell egrep -i vpc <input> | egrep -vi peer
Trotzdem gibt es hier erheblich mehr Leistung und Flexibilität als im aktuellen IOS.
Die grundlegende Cisco-Dokumentation finden Sie hier *, aber Ihre Befehlszeilenfunktion ?
erinnert Sie schnell daran:
5k# show run | ?
cut Print selected parts of lines.
diff Show difference between current and previous invocation (creates temp files: remove them
with 'diff-clean' command and dont use it on commands with big outputs, like 'show
tech'!)
egrep Egrep - print lines matching a pattern
grep Grep - print lines matching a pattern
head Display first lines
human Output in human format
last Display last lines
less Filter for paging
no-more Turn-off pagination for command output
section Show lines that include the pattern as well as the subsequent lines that are more
indented than matching line
sort Stream Sorter
tr Translate, squeeze, and/or delete characters
uniq Discard all but one of successive identical lines
vsh The shell that understands cli command
wc Count words, lines, characters
xml Output in xml format (according to .xsd definitions)
begin Begin with the line that matches
count Count number of lines
end End with the line that matches
exclude Exclude lines that match
include Include lines that match
5k# show run | inc ?
WORD Search for the expression
ignore-case Ignore case difference when comparing strings
line-exp Print only lines where the match is a whole line
5k# show run | egrep ?
WORD Search for the expression
count Print a total count of matching lines only
ignore-case Ignore case difference when comparing strings
invert-match Print only lines that contain no matches for <expr>
line-exp Print only lines where the match is a whole line
line-number Print each match preceded by its line number
next Print <num> lines of context after every matching line
prev Print <num> lines of context before every matching line
word-exp Print only lines where the match is a complete word
Anschließend möchten Sie nach "Spaß" suchen (was noch?), Um das Handbuch zur grundlegenden Konfiguration zu finden (das den Abschnitt "Regulärer Ausdruck" im Kapitel " Grundlegendes zur Befehlszeilenschnittstelle" enthält ).
Osterei? Die Kapitelnummern sind für dieses Dokument binär.
Wenn Sie durch die docs gehen, werden Sie viel mehr * nix-wie Kommandozeilen - Tools finden, einschließlich cut
, tr
und auf dem 7K, sed
und einige andere Leckereien.
Übersehen Sie auch nicht die Modifikatoren prev
und next
für "Include" -Matches.
Dadurch werden Zeilen mit foo sowie drei Zeilen vor und zwei Zeilen nach dem Kontext erfasst:
show run | inc foo prev 3 next 2