Я пытаюсь написать программу, которая обнаружит, если файл имеет \n
или \r\n
окончания строк, а затем исправит их.Я надеюсь, что скрипт выведет некоторые сообщения на консоль, но у меня проблемы.Я не могу понять, как печатать окончания строк как литералы.
Вот мой метод, который проверяет тип окончания строки:
def determine_line_ending(filename)
File.open(filename, 'r') do |file|
return file.readline[/\r?\n$/]
end
end
ending = determine_line_ending(ARGV.first)
Возможно, этот метод вернет либо \n
или \r\n
, если он совпадает с одним из этих шаблонов в первой строке файла.
Затем я хочу вывести на консоль, какой тип конца был обнаружен, но если я использую puts ending
, тогда он простодобавляет конец строки в консоль.Я знаю, что если бы я использовал puts '\r\n'
, то он напечатал бы их буквально, или если я использовал двойные кавычки, мне просто нужно было избежать обратной косой черты.Но я довольно новичок в Ruby, и мне трудно найти способ напечатать мою переменную как литерал вместо строки.