La réponse simple est que, pour un mappage un à un entre IOS et NX-OS, cela ressemble à ceci:
IOS : show run | inc (interface Vlan)|(ip address)
NX-OS : show run | inc 'interface Vlan|ip address'
Notez que cela a plus de sens lorsque vous omettez les parens supplémentaires dans l'original:
show run | inc (interface Vlan|ip address)
La clé de cet exemple est que pour NX-OS, les parens sont remplacés par des guillemets.
Vous pouvez également utiliser des guillemets doubles, par exemple ""
.
NX-OS est basé sur Linux [1] et utilise un moteur d'expression régulière de type * nix. Les commandes sont bizarres entre le libellé anglais et les expressions idiomatiques standard.
Par exemple, ce qui serait egrep -v
dans bash ressemblerait à egrep ignore-case
Sur la ligne de commande, cela ressemblerait à quelque chose comme
show run | egrep ignore-case vpc
ou
show run | inc ignore-case vpc
Un exemple de la verbosité (et de la force) des nouvelles fonctionnalités d'expression régulière:
show run | egrep ignore-case vpc | egrep invert-match ignore-case peer
Ce serait équivalent à un bash-shell egrep -i vpc <input> | egrep -vi peer
Néanmoins, il y a beaucoup plus de puissance et de flexibilité ici que dans l'IOS actuel.
La documentation de base de Cisco est ici *, mais votre ?
fonction de ligne de commande vous donne des rappels rapides:
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
Vous devrez ensuite rechercher «amusant» (quoi d'autre?) Pour trouver le Guide de configuration des principes fondamentaux (qui contient la section Expression régulière dans le chapitre Comprendre l'interface de ligne de commande ).
Œuf de Pâques? Les numéros de chapitre sont en binaire pour ce document.
Si vous marchez dans la documentation, vous trouverez beaucoup plus * outils de ligne de commande-nix, y compris cut
, tr
et sur le 7K, sed
et quelques autres goodies.
N'oubliez pas non plus les modificateurs prev
et next
pour les correspondances «include».
Cela récupérera les lignes contenant foo, ainsi que trois lignes avant et deux lignes après pour le contexte:
show run | inc foo prev 3 next 2