我需要確定我的ruby腳本正在運行的環境,以便在執行後刪除文件和清理目錄。Ruby如何確定執行環境
我試過使用ENV['os']
,但我使用cygwin,它給了我Windows_NT,有沒有人知道一種方式來找到當前的環境?
感謝
我需要確定我的ruby腳本正在運行的環境,以便在執行後刪除文件和清理目錄。Ruby如何確定執行環境
我試過使用ENV['os']
,但我使用cygwin,它給了我Windows_NT,有沒有人知道一種方式來找到當前的環境?
感謝
我用寶石「OS」,這可以在這裏找到:
我沒有使用Cygwin嘗試過,但我沒有替代我自己用的變量ENV散列用它。
當前環境是由提供的全局常數RUBY_PLATFORM
紅寶石調用在cygwin的bash外殼(在/ usr /斌/紅寶石):
puts RUBY_PLATFORM
i386-cygwin
紅寶石調用在命令提示(C: \ Ruby193 \ BIN \ ruby.exe):
puts RUBY_PLATFORM
i386-mingw32
puts ENV['OS']
對於上述兩種環境回報:Windows_NT
當前OS可以從RUBY_PLATFORM
puts RUBY_PLATFORM
X86_64-linux
然而來獲得,當我使用ENV [ 'OS'] Linux機器上,紅寶石返回nil。
此問題也解決您的問題。 http://stackoverflow.com/questions/170956/ruby-how-can-i-find-out-on-which-system-my-program-is-running – Ryanmt
謝謝你,虐待寶石'os' –
os寶石精美地工作。我們可以做一些事情,比如'OS :: windows?''OS :: linux?' – rpattabi