La respuesta fácil es que, para un mapeo uno a uno de IOS a NX-OS, se ve así:
IOS : show run | inc (interface Vlan)|(ip address)
NX-OS : show run | inc 'interface Vlan|ip address'
Tenga en cuenta que esto tiene más sentido cuando omite los parens adicionales en el original:
show run | inc (interface Vlan|ip address)
La clave en este ejemplo es que para NX-OS, los parens son reemplazados por comillas.
También podría usar comillas dobles, es decir ""
.
NX-OS está basado en Linux [1] , y utiliza un motor de expresión regular similar a * nix. Los comandos son extraños y se componen de palabras en inglés y expresiones idiomáticas estándar.
Por ejemplo, lo que estaría egrep -v
en bash se vería egrep ignore-case
en la línea de comando, esto se vería algo así
show run | egrep ignore-case vpc
o
show run | inc ignore-case vpc
Un ejemplo de la verbosidad (y fuerza) de las nuevas características de expresiones regulares:
show run | egrep ignore-case vpc | egrep invert-match ignore-case peer
Esto sería equivalente a un bash-shell egrep -i vpc <input> | egrep -vi peer
Sin embargo, aquí hay considerablemente más potencia y flexibilidad que en el IOS actual.
La documentación básica de Cisco está aquí *, pero su ?
función de línea de comandos le ofrece recordatorios rápidos:
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
Entonces querrá buscar "diversión" (¿qué más?) Para encontrar la Guía de configuración de fundamentos (que contiene la sección Expresión regular en el capítulo Comprensión de la interfaz de línea de comandos ).
¿Huevo de Pascua? Los números de los capítulos están en binario para este documento.
Si usted camina a través de los documentos, encontrará mucho más unix, herramientas de línea de comandos, entre ellos cut
, tr
y en la 7K, sed
y algunas otras golosinas.
Además, no pase por alto los modificadores prev
y next
para las coincidencias 'incluir'.
Esto tomará líneas que contienen foo, así como tres líneas antes y dos líneas después para el contexto:
show run | inc foo prev 3 next 2