mirror of
https://gitlab.com/mbunkus/mkvtoolnix.git
synced 2024-10-22 07:21:21 +00:00
25 lines
550 B
Ruby
25 lines
550 B
Ruby
def error(message)
|
|
puts message
|
|
exit 1
|
|
end
|
|
|
|
def last_exit_code
|
|
$?.respond_to?(:exitstatus) ? $?.exitstatus : $?.to_i
|
|
end
|
|
|
|
def run(cmdline, opts = {})
|
|
cmdline = cmdline.gsub(/\n/, ' ').gsub(/^\s+/, '').gsub(/\s+$/, '').gsub(/\s+/, ' ')
|
|
|
|
puts cmdline unless opts[:dont_echo].to_bool
|
|
system cmdline
|
|
|
|
code = last_exit_code
|
|
exit code if (code != 0) && !opts[:allow_failure].to_bool
|
|
end
|
|
|
|
def runq(msg, cmdline, options = {})
|
|
verbose = ENV['V'].to_bool
|
|
puts msg if !verbose
|
|
run cmdline, options.clone.merge(:dont_echo => !verbose)
|
|
end
|