Вывод в новый файл можно сделать следующим образом (не забудьте второй параметр) :
output = File.open( "outputfile.yml","w" )
output << "This is going to the output file"
output.close
Итак, в вашем примере вы можете сделать это:
File.open("us_cities.yml", "r+") do |file|
while line = file.gets
"do find a replace"
end
output = File.open( "outputfile.yml", "w" )
output << "Here I am writing to a new file"
output.close
end
Если вы хотите добавить файл, убедитесь, что вы открыли выходной файл за пределами цикла.