5
A
回答
4
我不认为有任何的Ruby内置函数来检索地址;您可能需要进行系统调用以列出该值(例如,UNIX上的ifconfig
,Win32上的ipconfig /all
),并根据需要解析输出。
像这样(未经测试的伪代码):
def mac_address
platform = RUBY_PLATFORM.downcase
output = `#{(platform =~ /win32/) ? 'ipconfig /all' : 'ifconfig'}`
case platform
when /darwin/
$1 if output =~ /en1.*?(([A-F0-9]{2}:){5}[A-F0-9]{2})/im
when /win32/
$1 if output =~ /Physical Address.*?(([A-F0-9]{2}-){5}[A-F0-9]{2})/im
# Cases for other platforms...
else nil
end
end
3
有一个名为macaddr
做这个宝石,但基本上它的解析系统的ifconfig
的输出。你可以看到线程时它被在http://www.ruby-forum.com/topic/113956
相关问题
- 1. 如何在我的Mac上使用/ usr/bin/ruby指向Ruby的正确版本?
- 2. 我如何使用Ruby
- 3. Ruby:我如何使用assert_nothing_raised?
- 4. 如何让getpwuid在我的mac应用程序中工作?
- 5. 如何让Mac的终端使用Brew的PHP版本?
- 6. 如何让我的网址使用mod_rewite?
- 7. 如何让Html.RenderAction使用我的参数?
- 8. 如何让Sass在使用Scout的Mac上工作?
- 9. 如何让我的Mac上的终端识别RVM?
- 10. 我使用RVM安装了ruby 1.9.2,但是当我输入“ruby -v”告诉我ruby vi具有1.8.7(mac)
- 11. 我如何到Mac应用
- 12. 如何让机器的mac地址
- 13. 如何让我的Mac OS X终端正确控制gunplot?
- 14. 我该如何让java 8成为默认的mac
- 15. 如何在Mac OS上使用RVM安装Ruby 2.4.0
- 16. 如何让Octopress使用Ruby的系统版本?
- 17. 如何让Ruby的SOAP :: WSDLDriverFactory使用自签名证书?
- 18. 如何让Phusion Passenger使用正确版本的Ruby?
- 19. 我如何在Ruby中使用硒?
- 20. 如何让qt/C++在mac上使用mysql?
- 21. 如何让MvvmCross vNext在Mac上使用MonoDevelop进行编译
- 22. Ruby twitter gem。如何让喜欢我的帖子的人
- 23. 如何配置travis让我使用nslookup
- 24. Rails:我如何让image_tag使用fqdn?
- 25. 我如何在Mac
- 26. 我如何在Mac
- 27. 如何使用Ruby
- 28. 如何使用Ruby
- 29. 如何使用Ruby
- 30. 如何使用Ruby
开发是什么操作系统你?如果不知道,没有可能的答案是可能的。 – 2012-01-06 17:29:55
猜猜会有帮助。 Mac OS X – mcass20 2012-01-06 18:41:25