所以,如果我的界面看起来像这样:
interface Vlan224
description MANAGEMENT
no shutdown
ip flow monitor netflow-monitor input
no ip redirects
ip address 10.214.224.2/24
ip ospf passive-interface
ip router ospf 1 area 0.0.0.3
ip pim sparse-mode
hsrp version 2
hsrp 224
preempt
priority 120
ip 10.214.224.1
我想运行类似以下内容的文件:
show run | inc (interface Vlan)|(ip address)
输出看起来类似于(如果在IOS上):
interface Vlan10
ip address 10.1.10.1 255.255.255.0
interface Vlan 11
ip address 10.1.11.1 255.255.255.0
etc.
#1 楼
您可以执行show run | egrep interface.Vlan|ip.address
。它确实获取了更多信息,但应该提供与IOS中类似的输出。我认为grep可能也可以工作,但是我使用egrep并获得了正确的输出。 #2 楼
如果您只是在寻找Vlan接口的IP地址,则更好的方法可能是:show ip int br | grep -i vlan
注意:NXOS中的
show ip int br
仅显示第3层接口。要查看所有接口的状态,请使用show int br
UPDATE:
对于NXOS 4.0(2)及更早版本:
show run | grep -i face\ vlan|ip\ address
4.0( 3)及更高版本:
show run | grep ignore-case face\ vlan|ip\ address
\
也是如何使用正则表达式逃逸空间的方法。 NXOS正则表达式的链接:http://www.cisco.com/en/US/docs/switches/datacenter/sw/4_0/nx-os/fundamentals/configuration/guide2/fun_3about_cli.html#wp1237003 评论
我还希望获得有关子网信息的信息,所以这就是为什么我试图将其从“ show run”中删除。
–伪网络
13年5月30日在15:17
我懂了。然后试穿一个: grep -i face \ vlan | ip \ address这还将显示输出中包含“ face vlan”或“ ip address”的所有行
– emynd
2013年5月30日15:19
理查德,谢谢,但是在grep -i之后在f下得到一个胡萝卜
–伪网络
13年5月30日在17:06
很抱歉,我深表歉意。该语法应在NXOS 4.0(2)及更早版本上适用。对于4.0(3)及更高版本,将-i替换为ignore_case,这是链接cisco.com/en/US/docs/switches/datacenter/sw/4_0/nx-os/…
– emynd
13年5月30日在17:27
理查德·S(Richard S),这听起来就像我以前在ios中使用|公司,我现在需要在NXOS中使用| grep ignore-case等等等等。并且需要转义空格,例如不带引号的“ \”吗?而且我仍然可以使用多个|作为逻辑或?
–伪网络
13年5月30日在17:49
#3 楼
另一种涉及单引号的语法。# show run | inc 'interface Vlan|ip address'
在NX-OS中,参数解析的工作原理类似于bash。
#4 楼
我所看到的文档说这应该可以工作:show run | inc interface_Vlan|ip_address
虽然对于我来说,在4k刀片式交换机上似乎不可行。我在
sh run | inc interface.Vlan|ip.address
上取得了成功
评论
这在7K上不起作用。 7K#sh run | inc interface_Vlan | ip_address 7K#sh运行| inc interface_Vlan | ip_address-将胡萝卜放在p之下。完全没有输出。
–伪网络
13年5月30日在15:08
我没有Nexus可以尝试,但您可以尝试(interface.Vlan | ip.address)。 p下方的^听起来好像是将“ | i”解释为第二个管道。
–戴夫·努南(Dave Noonan)
13年5月30日在15:22
@Pseudocyber:*插入符号:-)
– Paul Gear
13年5月30日在23:05
根据文档,与IOS不同,“下划线仅被视为BPG相关命令的正则表达式”
– Belacqua
2014年3月6日20:50
#5 楼
一个简单的答案是,对于从IOS到NX-OS的一对一映射,它看起来像这样:IOS:
show run | inc (interface Vlan)|(ip address)
NX-OS:show run | inc 'interface Vlan|ip address'
请注意,当您在原件中遗漏多余的parens时,这更有意义:
show run | inc (interface Vlan|ip address)
本示例中的关键是对于NX-OS,parens被替换了通过引号。
还可以使用双引号,即
""
。 NX-OS是基于Linux的[1],并使用类似* nix的正则表达式引擎。这些命令在英语措辞和标准正则表达式惯用语之间是奇怪的。
例如,bash中的
egrep -v
看起来像egrep ignore-case
在命令行上,它看起来像
show run | egrep ignore-case vpc
或show run | inc ignore-case vpc
正则表达式新功能的详细程度(和强度)示例:
show run | egrep ignore-case vpc | egrep invert-match ignore-case peer
这等同于bash-shell
egrep -i vpc <input> | egrep -vi peer
,这里的功能和灵活性要比当前的IOS强大得多。
基本的Cisco文档在这里*,但是您的命令行
?
功能可以快速提醒您: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
请注意,文档可能取决于版本和平台。
此处是Nexus 7K的顶层:Cisco Nexus 7000系列交换机配置指南
对于5K:Cisco Nexus 5000系列交换机配置指南
然后,您将要搜索“乐趣”(还有什么?)以找到基本配置指南(其中包含“了解命令行界面”一章中的“正则表达式”部分)。 )。
复活节彩蛋?本文档的章节编号是二进制的。
如果您遍历文档,您会发现更多* nix式的命令行工具,包括
cut
,tr
以及在7K上的sed
和其他一些好东西。 > 此外,请不要忽略“ include”匹配项的
prev
和next
修饰符。 这将获取包含foo的行以及上下文的前三行和后两行:
show run | inc foo prev 3 next 2
评论
这有效。因此,egrep代替了Show X |公司?然后代码查找“ interface” anything“ Vlan”或“ ip” anything“ address”? (无引号)
–伪网络
13年5月30日在17:15
我相信是这样。您可以在7k上访问egrep的文档:cisco.com/en/US/docs/switches/datacenter/sw/6_x/nx-os/…
–Odeonevets
13年5月30日在17:30