【Ruby简单脚本01】查看wifi密码

脚本

ruby 复制代码
# 使用io库  
def get_cmd_result(cmd)  
  IO.popen(cmd,:external_encoding=>'GBK').read.encode("utf-8")  
end  

def list_wifi  
  wifi_pwds = Hash.new  

  # 获取所有wifi文件  
  o1 = get_cmd_result("netsh wlan show profiles")  
  # 获取所有匹配结果  
  wifi_names = o1.scan(/所有用户配置文件\s*:\s*(.*?)\n/m)  
  unless wifi_names.empty?  
    wifi_names.each do |wifi_name|  
      o2 = get_cmd_result("netsh wlan show profile name=\"#{wifi_name[0]}\" key=clear")  
      wifi_pwd = o2.scan(/关键内容\s*:\s*(.*)\n/)  
      wifi_pwds.update({wifi_name[0] => wifi_pwd[0]})  
    end  
  end  wifi_pwds  
end  

puts list_wifi

输出结果

{"TP-LINK_2301"=>["1234567"], "CU_trtsds"=>["123456"], "Mi 10S"=>["12345678"]}

本文由【产品经理不是经理】gzh 同步发布,欢迎关注

相关推荐
小师兄吃牛肉2 天前
C++ 与 Lua 的协程交互:从原理到实战
c++·lua·交互
喜欢的名字被抢了2 天前
09-Redis 进阶原理篇:单线程、多线程、过期、LRU-LFU、Fork 与 Lua
数据库·redis·lua
白山编程大哥3 天前
Lua 中使用 C 语言的用户自定义类型——userdata
c语言·junit·lua
大侠归来5 天前
C++ 与 Lua 的协程交互:从原理到实战
c++·lua·交互
疯狂成瘾者6 天前
海康 Artemis 接口对接
开发语言·lua
一线灵6 天前
跨平台游戏引擎 Axmol-2.11.5 发布
游戏引擎·lua
liulilittle15 天前
麻将结算全链路语义(SETTLE_SEMANTICS)
ai·自动化·llm·mock·lua·测试
liulilittle15 天前
麻将服务器崩溃补偿与异常处理语义(CRASH_SEMANTICS)
ai·自动化·llm·mock·lua·测试·tools
liulilittle15 天前
麻将 UI 层可观察行为(UI_BEHAVIOR)
ai·自动化·llm·mock·lua·测试·tools
liulilittle15 天前
C++ 引擎接口到 mock 的映射(INTERFACE_MAP)
ai·自动化·llm·mock·lua·测试·tools