# File lib/dragonfly/content.rb, line 168 def shell_update(opts={}) ext = opts[:ext] || self.ext should_escape = opts[:escape] != false tempfile = Utils.new_tempfile(ext) old_path = should_escape ? shell.escape(path) : path new_path = should_escape ? shell.escape(tempfile.path) : tempfile.path command = yield(old_path, new_path) run(command, :escape => should_escape) update(tempfile) end