module PosixShort

Constants

NO_COMMAND_FOUND_CODE
NO_COMMAND_FOUND_MSG
VERSION

Public Class Methods

exec(*arguments) { |result| ... } click to toggle source

Usage: Posix.exec('commandlinetool', argument_name_1, argument_value_1, …)

# File lib/posix.rb, line 11
def self.exec(*arguments)
  result = POSIX::Spawn::Child.new(*arguments)
  if result.status.exitstatus == NO_COMMAND_FOUND_CODE
    raise(NO_COMMAND_FOUND_MSG % arguments.first)
  end

  error_text = result.err
  return result.out if error_text.empty?

  block_given? ? yield(result) : raise(error_text)
end