Могут ли в Ruby обрабатывать пробелы GetOptLong в аргументах параметров? - PullRequest
0 голосов
/ 19 октября 2011

Я пытаюсь передать аргумент для опции в скрипте ruby, которая будет командой unix.Команда может (вероятно, будет) включать greps, трубы и много других вещей.По сути, меня интересует, можно ли настроить параметр GetOptLong для приема любого символа в качестве аргумента.Что бы это ни стоило, я не могу использовать OptionParser, и, вероятно, не слоб (или как там это называется).

Спасибо, -Rob

1 Ответ

1 голос
/ 20 октября 2011

Уверен, что вы можете просто передать свои команды 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'"
...