#!/usr/bin/ruby if ARGV.size != 1 $stderr.puts "Usage: #{File.basename(__FILE__)} " exit 1 end app_name = ARGV[0] unless app_name.match(/^[a-zA-Z\d\s]+$/) $stderr.puts "Invalid app name" exit 1 end if File.exist?(app_name) $stderr.puts "Directory `#{app_name}' already exists" exit 1 end Dir.mkdir(app_name) Dir.chdir(app_name) do File.open('Rakefile', 'w') do |io| io.puts <