method
adjust_shebang
rails latest stable - Class:
Installer
adjust_shebang(path)public
No documentation available.
# File actionwebservice/setup.rb, line 1151
def adjust_shebang(path)
return if no_harm?
tmpfile = File.basename(path) + '.tmp'
begin
File.open(path, 'rb') {|r|
first = r.gets
return unless File.basename(config('rubypath')) == 'ruby'
return unless File.basename(first.sub(/\A\#!/, '').split[0]) == 'ruby'
$stderr.puts "adjusting shebang: #{File.basename(path)}" if verbose?
File.open(tmpfile, 'wb') {|w|
w.print first.sub(/\A\#!\s*\S+/, '#! ' + config('rubypath'))
w.write r.read
}
move_file tmpfile, File.basename(path)
}
ensure
File.unlink tmpfile if File.exist?(tmpfile)
end
end