Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
require 'open3'
module ShellJob
@queue = :default
def self.perform(*args)
script = args.join(' ')
puts "$ #{script}"
Open3.popen3(args.join(' ')) do |stdin, stdout, stderr|
puts stdout.read.inspect
end
end
end
## Queue it up
# Resque.enqueue(ShellJob, 'which', 'cat')
ShellJob.perform('which', 'cat')
## Output:
# $ which cat
# "/bin/cat\n"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment