【发布时间】:2012-06-18 17:00:03
【问题描述】:
根据一些答案,以下应该给我 Windows 中的环境变量用户名。 但只是给SYSTEM。我知道其他获取用户名的方法,但是在 Ruby193/Windows7 中获取环境变量的最简单方法是什么?
puts ENV['USERNAME'] #=> SYSTEM
【问题讨论】:
标签: ruby windows environment-variables
根据一些答案,以下应该给我 Windows 中的环境变量用户名。 但只是给SYSTEM。我知道其他获取用户名的方法,但是在 Ruby193/Windows7 中获取环境变量的最简单方法是什么?
puts ENV['USERNAME'] #=> SYSTEM
【问题讨论】:
标签: ruby windows environment-variables
那是获取环境变量内容的方式。与操作系统无关。
如果返回SYSTEM,那么您的用户名是 SYSTEM。
【讨论】:
如果您的进程作为服务运行(例如 Web 服务器),那么SYSTEM 是正确答案。您可以将服务更改为以其他用户身份运行(但我怀疑这不是您想要做的)。
【讨论】:
找到了!尽管我没有收到错误但结果错误(我的用户名肯定不是 SYSTEM 并且我在解释器中运行脚本,没什么特别的)我不得不要求 win32ole。 我之前注意到了这一点,windows 脚本不会运行或没有给出预期的结果,但不要抱怨遗漏了一些东西,当你包含一些库时它会突然起作用。
require 'win32ole'
puts ENV['username'] #=> peter
编辑:当我现在尝试它时,它突然无需要求就可以工作,令人毛骨悚然!我会在其他 W7 电脑上进行一些测试,并随时通知您。
【讨论】: