Cisco Nexus で実行可能なコマンドを一覧表示する

Cisco Nexus では show cli syntax を使うとコマンドの一覧を表示することが出来ます。これを活用してコマンドを探すことが出来ます。

show cli syntax は出力が非常に多くなるので、grep や egrep で出力結果を絞ります。例えばスパニングツリーに関連するコマンドだけを表示させたい場合は show cli syntax | grep spanning-tree のように実行します。

1
2
3
4
5
6
7
8
9
NX-OS# show cli syntax | grep spanning-tree
(620)  [ no ] debug spanning-tree all
(621)  [ no ] debug spanning-tree bpdu_rx [ interface <int> ] [ tree <i0> ]
(622)  [ no ] debug spanning-tree bpdu_tx [ interface <int> ] [ tree <i0> ]
(623)  [ no ] debug spanning-tree db [ interface <int> ] [ tree <i0> ]
(624)  [ no ] debug spanning-tree error
    ・
    ・
    ・

Nexus では feature を有効化していないと、該当の feature に関連するコマンドは利用出来ません。具体的には「設定出来ない」「補完もされない」ことになります。例えば、OSPF feature を有効化していない場合、show cli syntax | grep ospf を実行しても何も表示されません。

1
2
NX-OS# show cli syntax | grep ospf
NX-OS#

評価ライセンスを有効化し、OSPF feature を有効化します。

1
2
3
4
NX-OS# configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
NX-OS(config)# license grace-period
NX-OS(config)# feature ospf

再度、show cli syntax | grep ospf を実行すると、OSPF 関連のコマンドが表示されるようになっています。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
NX-OS# show cli syntax | grep ospf
(2012) show logging level ospf
(2186) show tech-support ospf [ brief ]
(2254) show running-config ospf [ all ]
(2319) show startup-config ospf [ all ]
(2461) show debug { ospf | ip ospf }
(2857) show debug-filter { ospf | ip ospf }
    ・
    ・
    ・

recurse オプションを指定しない限り、show cli syntax は現在のモードで実行可能なコマンドのみを表示します。例えば、グローバルコンフィグレーションモードで show cli syntax | grep ospf を実行すると、先程とは違う結果になったはずです。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
NX-OS# configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
NX-OS(config)# show cli syntax | grep ospf
(185)  [ no ] logging level ospf <level>
(201)  [ no ] snmp-server enable traps ospf [ <tag> ]
(202)  [ no ] snmp-server enable traps ospf [ <tag> ] lsa
(317)  [ no ] feature ospf
(319)  [ no ] feature ospfv3
(538)  [ no ] router ospf <tag>
(710)  { { no snmp-server enable traps ospf [ <tag> ] rate-limit [ <window> <rate> ] } | { snmp-server enable traps ospf [ <tag> ] rate-limit <window> <rate> } }
(900)  { { no snmp-server enable traps ospf [ <tag> ] rate-limit [ <window> <rate> ] } | { snmp-server enable traps ospf [ <tag> ] rate-limit <window> <rate> } }

更に、インターフェイスコンフィグレーションモードで show cli syntax | grep ospf を実行すると、また違った結果になるはずです。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
NX-OS(config)# interface ethernet 2/1
NX-OS(config-if)# show cli syntax | grep ospf
(62)  { ip ospf authentication key-chain <keychain> } | { no ip ospf authentication key-chain [ <keychain> ] }
(63)  { { ip ospf authentication-key <key> } | { no ip ospf authentication-key [ <key> ] } }
(64)  { { ip ospf message-digest-key <keyid> md5 <key> } | { no ip ospf message-digest-key <keyid> [ md5 <key> ] } }
(65)  { ip ospf cost <cost> } | { no ip ospf cost [ <cost> ] }
(66)  { ip ospf dead-interval <interval> } | { no ip ospf dead-interval [ <interval> ] }
(67)  { ip ospf hello-interval <interval> } | { no ip ospf hello-interval [ <interval> ] }
(68)  { ip ospf priority <prio> } | { no ip ospf priority [ <prio> ] }
(69)  { ip ospf retransmit-interval <interval> } | { no ip ospf retransmit-interval [ <interval> ] }
(70)  { ip ospf transmit-delay <delay> } | { no ip ospf transmit-delay [ <delay> ] }
(127)  { ip ospf authentication key-chain <keychain> } | { no ip ospf authentication key-chain [ <keychain> ] }
(128)  { { ip ospf authentication-key <key> } | { no ip ospf authentication-key [ <key> ] } }
(129)  { { ip ospf message-digest-key <keyid> md5 <key> } | { no ip ospf message-digest-key <keyid> [ md5 <key> ] } }
(130)  { ip ospf cost <cost> } | { no ip ospf cost [ <cost> ] }
(131)  { ip ospf dead-interval <interval> } | { no ip ospf dead-interval [ <interval> ] }
(132)  { ip ospf hello-interval <interval> } | { no ip ospf hello-interval [ <interval> ] }
(133)  { ip ospf priority <prio> } | { no ip ospf priority [ <prio> ] }
(134)  { ip ospf retransmit-interval <interval> } | { no ip ospf retransmit-interval [ <interval> ] }
(135)  { ip ospf transmit-delay <delay> } | { no ip ospf transmit-delay [ <delay> ] }
(145)  [ no ] ip ospf authentication [ message-digest | null ]
(146)  [ no ] ip ospf flood-bw-percentage <percentage>
(147)  [ no ] ip ospf shutdown
(148)  [ no ] ip ospf mtu-ignore
(149)  [ no ] ip router ospf <tag> area { <area-id-ip> | <area-id-int> } [ secondaries none ]
(150)  [ no ] ip router ospf <tag> multi-area <area-id-ip>
(201)  { ip ospf network { broadcast | point-to-point } } | { no ip ospf network [ { broadcast | point-to-point } ] }
(202)  { ip ospf network { broadcast | point-to-point } } | { no ip ospf network [ { broadcast | point-to-point } ] }
(203)  [ default | no ] ip ospf passive-interface