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