Ruby如何判断执行环境

标签 ruby operating-system environment-variables

我需要确定我的 ruby​​ 脚本在什么环境中运行,以便我可以在执行后删除文件并清理目录。

我尝试使用 ENV['os'] 但我使用的是 cygwin,它给了我 Windows_NT,有人知道找到当前环境的方法吗?

谢谢

最佳答案

当前环境由全局常量RUBY_PLATFORM提供

在 cygwin bash shell (/usr/bin/ruby) 中调用的 ruby​​:

puts RUBY_PLATFORM
i386-cygwin

在命令提示符下调用 ruby​​ (c:\Ruby193\bin\ruby.exe):

puts RUBY_PLATFORM
i386-mingw32

puts ENV['OS'] 为上述两个环境返回:Windows_NT

关于Ruby如何判断执行环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6523038/

相关文章:

environment-variables - 如何通过设置环境变量的 Windows 终端启动 Git Bash?

javascript - 为什么我收到 ArgumentError(销毁操作的参数数量错误(给定 0,预期 1)?Rails 5.2

ruby - 为什么我的 rdebug session 显示 "*** No sourcefile available"

ruby - 如何使用 rspec 删除特定文件?

ruby - 如何在 cucumber 步骤中用表格写表格

multithreading - 系统在程序中的哪些点切换线程

python - 如何在某些操作系统上禁用 Python 程序?

c - 我们如何在Linux 2.6 中从保护模式切换到实模式?

java - Tomcat:如何在 Netbeans 中设置 Java 系统属性?

mysql - 使用环境变量进行本地 Sequelize 配置