Почему некоторые текстовые редакторы предлагают завершить ваш файл переводом строки? Почему это важно?

481
racl101

Почему некоторые текстовые редакторы, такие как BBEdit и Textmate, предлагают завершить ваш файл новой строкой (перевод строки)? Почему это важно?

Есть ли какие-либо предостережения, чтобы не заканчивать файл переносом строки?

2

1 ответ на вопрос

4
juggler

Некоторые команды обработки текста в стиле Unix могут привести к неожиданному поведению, если последняя строка не заканчивается новой строкой. Например, wc -lподсчитывает количество строк в файле, но, по сути, это происходит путем подсчета символов новой строки, поэтому последняя «строка» не учитывается. Некоторые другие программы также пропускают последнюю строку, если она не заканчивается новой строкой.

В качестве другого примера, если вы использовали `cat` для объединения двух файлов, а последняя строка первого файла не заканчивалась символом новой строки, тогда последняя строка первого файла и первая строка второго файла будут объединены как один линия. Соглашение Unix заключается в том, что перевод строки - это разделитель строки, а не разделитель строк. garyjohn 12 лет назад 1