Class: Aio::Module::Cmd::Cisco::ShowRun
- Inherits:
-
Aio::Module::Cmd::Cisco
- Object
- Aio::Module::Cmd
- Aio::Module::Cmd::Cisco
- Aio::Module::Cmd::Cisco::ShowRun
- Includes:
- Aio::Module
- Defined in:
- lib/modules/cmd/cisco/show_run.rb
Instance Attribute Summary
Attributes inherited from Aio::Module::Cmd
#cmd_info, #context, #device_info, #ext_info, #useful, #warning_klass
Instance Method Summary collapse
-
#initialize ⇒ ShowRun
constructor
A new instance of ShowRun.
-
#parse ⇒ Object
此模块暂时只支持将show run中的接口信息提取出来,不做任何处理.
Methods inherited from Aio::Module::Cmd
#author, #benchmark, #clear_useful, #cmd_full, #cmd_short, #description, #division, #key_stand, #license, #platform, #ranking, #set_defaults, #type
Methods included from Ui::Verbose
#clear_line, #print_error, #print_good, #progress_bar
Constructor Details
#initialize ⇒ ShowRun
Returns a new instance of ShowRun.
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/modules/cmd/cisco/show_run.rb', line 8 def initialize super({ :cmd_full => "show run", :cmd_short => "sh run", :author => "Elin", :description => "This is Cisco Command# show run", :key_stand => true, :platform => "all" }) end |
Instance Method Details
#parse ⇒ Object
此模块暂时只支持将show run中的接口信息提取出来,不做任何处理
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/modules/cmd/cisco/show_run.rb', line 22 def parse context = self.context.dup iface_config = {} useful[:iface_config] = iface_config # NOTE 删除 context.readline_match_block(/Building configuration/) do |block| key_stand_cisco end context.readline_range_loop(/interface (Fast|Gigabit)Ethernet/, reg_separator) do |cont| iface_name = cont.shift.split(' ')[1] iface_cont = cont.join("\n") iface_config[iface_name] = iface_cont end end |