RubyのGetoptlongプロセスは、オプションの引数でスペースを出すことができますか?

StackOverflow https://stackoverflow.com/questions/7826362

  •  27-10-2019
  •  | 
  •  

質問

私がやろうとしているのは、UNIXコマンドになるRubyスクリプトのオプションの引数を渡すことです。コマンドには(おそらく)、グレップ、パイプ、および他の多くの可能性のあるものが含まれる場合があります。本質的に、私が疑問に思っているのは、あらゆるキャラクターを議論として受け入れるように設定できることです。それが価値があることについては、私はOptionParserを使用することはできず、おそらくSlob(またはそれが呼ばれているもの)も使用できません。

ありがとう、 - ロブ

役に立ちましたか?

解決

Unixコマンドを文字列として渡して、スクリプト内からそれらを実行することができると確信しています。

#getoptlong.rb

require 'getoptlong'

opts = GetoptLong.new(
  [ '--unix', GetoptLong::OPTIONAL_ARGUMENT ]
)

opts.each do |opt, arg|
  case opt
    when '--unix'
      puts `#{arg}`
  end
end

次のようなものでスクリプトを実行します

ruby getOptLong.rb --unix "netstat -an | grep '61613'"
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top