Create a gist now

Instantly share code, notes, and snippets.

require 'open3'
module ShellJob
@queue = :default
def self.perform(*args)
puts "$ #{args.join(' ')}"
Open3.popen3(*args) 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