aio_elin 1.0.7 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aio/base/toolkit/regexp.rb +27 -27
- data/lib/modules/input/style/console.rb +3 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 68c2ed869316871e0aab1200b4d0575cd6bdfe498cf5706593dd6911363e1a2b
|
4
|
+
data.tar.gz: cef51f752f5664902c3cbf529e09fccb122644a117bc2579c2f32d25263128d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3e040c8c52896dbb809bb13bb47a995b947e7126eb45e800e678329ddd26e4e14e5c44a41782f7d5298ee805ae2be3b06c9cf4a619f63c0a8ae38961b5947f9f
|
7
|
+
data.tar.gz: 586f9b5db9b782731d71679c6d56ce0812ef5d8053bda2ed17fde5227cad6a8307b4d2c64bc8b8fe53cb0e67c1ba05abd130fcbfcdc2f61a8e49c25853257281
|
@@ -1,32 +1,32 @@
|
|
1
1
|
module Aio::Base::Toolkit
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
2
|
+
module Regexp
|
3
|
+
class << self
|
4
|
+
def to_reg(cmd)
|
5
|
+
res = cmd.gsub(' ', '([^\s]*)\s+')
|
6
|
+
res.insert(0, '^')
|
7
|
+
res.insert(-1, '([^\s]*)$')
|
8
|
+
return ::Regexp.new(res)
|
9
|
+
end
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
def blank
|
12
|
+
return /^[\t]*$/
|
13
|
+
end
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
15
|
+
# 产生一个安全的正则表达式
|
16
|
+
def safe(reg)
|
17
|
+
res = reg.to_s.gsub(' ', '\s+')
|
18
|
+
return ::Regexp.new(res)
|
19
|
+
end
|
20
20
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
21
|
+
# 将一个数组的正则表达式合并成为一个正则表达式
|
22
|
+
def merge(arr_regs)
|
23
|
+
str_arr = []
|
24
|
+
arr_regs.each {|x| str_arr << x.to_s}
|
25
|
+
new_reg = str_arr.join("|").gsub("?-mix:", "")
|
26
|
+
new_reg = ::Regexp.new(new_reg)
|
27
|
+
return new_reg
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
31
|
end
|
32
|
-
|
32
|
+
|
@@ -109,6 +109,7 @@ class Aio::Module::InputStyle::Console < Aio::Module::InputStyle
|
|
109
109
|
# 当前是空的状态
|
110
110
|
# 判断当前行有没有模块中的命令
|
111
111
|
line = Aio::Base::Toolkit::String.safe(line)
|
112
|
+
return if line.include?('Command is')
|
112
113
|
return unless @machine.regs.match(line)
|
113
114
|
|
114
115
|
@machine.to_cmd_state
|
@@ -127,7 +128,7 @@ class Aio::Module::InputStyle::Console < Aio::Module::InputStyle
|
|
127
128
|
|
128
129
|
# 当已经发现了是cmd行,那么紧接下来就是收集文本内容
|
129
130
|
cmd_context.device_name = res[:name]
|
130
|
-
cmd_context.cmd = res[:cmd]
|
131
|
+
cmd_context.cmd = res[:cmd].strip
|
131
132
|
@machine.to_context_state
|
132
133
|
end
|
133
134
|
end
|
@@ -138,6 +139,7 @@ class Aio::Module::InputStyle::Console < Aio::Module::InputStyle
|
|
138
139
|
# 如果这行是命令行格式,那么就代表上一个cmd内容结束
|
139
140
|
#tmp_reg = ::Regexp.new "^[\\[|<]{0,1}#{cmd_context.device_name}[#|>|\\]]{1}"
|
140
141
|
tmp_reg = ::Regexp.new "^[\\[|<]?#{cmd_context.device_name}[#|>|\\]]{1}"
|
142
|
+
|
141
143
|
# 可能会出现UTF-8识别不出摄氏度符号的问题
|
142
144
|
# 已经通过安全字符解决
|
143
145
|
begin
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aio_elin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-01-
|
11
|
+
date: 2019-01-15 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: 网络设备巡检工具
|
14
14
|
email: 365433079@qq.com
|