lib/modules/input/style/console.rb in aio_elin-1.0.7 vs lib/modules/input/style/console.rb in aio_elin-1.0.8
- old
+ new
@@ -107,10 +107,11 @@
def parse_line(line)
# 当前是空的状态
# 判断当前行有没有模块中的命令
line = Aio::Base::Toolkit::String.safe(line)
+ return if line.include?('Command is')
return unless @machine.regs.match(line)
@machine.to_cmd_state
@machine.parse_line(line)
end
@@ -125,20 +126,21 @@
return
end
# 当已经发现了是cmd行,那么紧接下来就是收集文本内容
cmd_context.device_name = res[:name]
- cmd_context.cmd = res[:cmd]
+ cmd_context.cmd = res[:cmd].strip
@machine.to_context_state
end
end
class ContextState < State
def parse_line(line)
# 如果这行是命令行格式,那么就代表上一个cmd内容结束
#tmp_reg = ::Regexp.new "^[\\[|<]{0,1}#{cmd_context.device_name}[#|>|\\]]{1}"
tmp_reg = ::Regexp.new "^[\\[|<]?#{cmd_context.device_name}[#|>|\\]]{1}"
+
# 可能会出现UTF-8识别不出摄氏度符号的问题
# 已经通过安全字符解决
begin
if tmp_reg.match(line)
cmd_context.done