0

Ruby が実行されているオペレーティング システムを確認する方法はありますか?

クリップボード gem を Selenium と組み合わせて使用​​しており、すべてのシステムでスクリプトを実行する必要があります。

「コピー」キーボード ショートカットは OSX と Windows で異なるため、スクリプトが実行されているオペレーティング システムを特定できるようにしたいと考えています。

4

1 に答える 1

2

RUBY_PLATFORM定数を使用して問い合わせることができます。

>> RUBY_PLATFORM
=> "i686-linux"

この目的のために、https://github.com/kotp/rlcw/blob/master/lib/platform.rbのようなコードを使用しました:

module Platform

  def check_operating_system
    # The Mac check has to be proceed before the Win check!
    # Perhaps checking for /mswin/ will reduce this requirement.
    case RUBY_PLATFORM
    when /ix/i, /ux/i, /gnu/i, /sysv/i, /solaris/i, /sunos/i, /bsd/i
      require 'gtk2'
      Gtk.init
      @clip = Gtk::Clipboard.get(Gdk::Selection::CLIPBOARD)
      :unix
    when /darwin/i
      :mac_os_x
    when /mswin/i, /ming/i
      require 'vr/clipboard'
      @clip = Clipboard.new(2048)
      :windows
    else
      :other
    end
  end

end
于 2013-11-08T01:02:33.950 に答える