По определению строка должна заканчиваться символом новой строки (\n
) (ref.). Но для целей этого поста я рассмотрю любую последовательность символов как строку, заканчивается ли она с \n
.Как получить последнюю строку, содержащую n?
Команда tail -n 1
возвращает последнюю строку, заканчивается ли она \n
. Как можно получить из файла последнюю строку, которая заканчивается \n
, является ли эта строка последней строкой или второй-последней строкой файла?
Возможной стратегией было бы разделение на символ новой строки и проверка, является ли последняя группа пустой (последняя строка заканчивается новой строкой) или нет (последняя строка не заканчивается новой строкой). Исходя из этого условия, вы можете выбрать последнюю группу или предыдущую группу. – HashPsi
Я пробовал это. Проблема в том, что 'tail' не возвращает завершающий \ n независимо от того, присутствовал ли он в файле. Таким образом, информация теряется. –
Вы должны полагаться на что-то другое, кроме хвоста, чтобы прочитать файл. – HashPsi