Как мне остановить ‘more’ от остановки и отображения “(КОНЕЦ)” в конце файлов в Debian 12 (bookworm)?

Вопрос или проблема

С момента обновления до Debian 12 (bookworm) команда more кажется была изменена и теперь останавливается, когда вы достигаете конца файла, который просматриваете, и затем отображает “(END)“, вместо того чтобы просто вернуть вас к командной строке (или предложить перейти к следующему файлу, если вы пытаетесь просмотреть несколько файлов), как это было раньше.

Кажется, теперь мне нужно нажимать q, чтобы действительно выйти из more и вернуться к командной строке – но это тогда не позволит мне просмотреть следующий файл(ы), которые я указал (в случае нескольких файлов), и в таком случае мне нужно будет явно использовать клавиатурное не совсем короткое сочетание “Перейти к следующему файлу”.

Как человек с многолетней мышечной памятью о том, что <space> является универсальным сочетанием для выполнения правильного действия, это изменение действительно очень раздражает!

Существует ли способ вернуть more к предыдущему более разумному поведению, или, возможно, теперь, к сожалению, пришло время мне рассмотреть возможность использования другой программы для просмотра файлов?

Это было изменение поведения в реализации more, предоставленной util-linux 2.38. До этого выход на EOF был включен, если more не запускался в терминале; в версии 2.38 выход на EOF был отключен по умолчанию, чтобы сделать more совместимым с его спецификацией POSIX (см. также письмо с патчем). Это было отменено в 2.39 (точнее, выход на EOF теперь включен, если POSIXLY_CORRECT не установлен), но Debian 12 поставляется с 2.38.

Тем не менее, существует параметр, который включает выход на EOF: -e. Поэтому вы можете создать псевдоним more как more -e, чтобы восстановить старое поведение, как минимум, когда вы явно запускаете more в своей оболочке. Чтобы восстановить поведение во всех случаях, определите переменную окружения MORE:

export MORE=-e

.

Ответ или решение

Чтобы решить проблему с окончанием работы команды more, которая теперь останавливается на конце файла и показывает "(END)" в Debian 12 (Bookworm), рассмотрим несколько вариантов.

Причины изменения поведения more

Это изменение поведения связано с обновлением util-linux до версии 2.38, в которой по умолчанию отключена функция выхода на конце файла (EOF). Ранее версия more завершала работу и возвращала вас в командную строку, когда достигала конца файла. С новой версией more было сделано изменение, чтобы привести его в соответствие с POSIX-спецификациями. Однако это может привести к путанице у пользователей, которые привыкли к старому поведению.

Варианты решения проблемы

  1. Использование команды -e:
    Вы можете использовать опцию -e, чтобы вернуть more к привычному поведению, когда оно завершает работу на конце файла. Для этого просто выполните команду:

    more -e имя_файла

    Однако, это решение требует ручного ввода опции каждый раз.

  2. Создание алиаса:
    Если вы хотите автоматизировать этот процесс и не вводить -e вручную каждый раз, вы можете создать алиас в вашем shell. Для этого добавьте следующую строку в файл конфигурации вашего терминала (например, ~/.bashrc или ~/.zshrc, в зависимости от используемого интерпретатора команд):

    alias more='more -e'

    После внесения изменений не забудьте выполнить команду:

    source ~/.bashrc

    или

    source ~/.zshrc

    Это позволит вам использовать команду more с опцией -e автоматически.

  3. Использование переменной окружения MORE:
    Чтобы вернуть старое поведение в каждом сеансе, вы также можете установить переменную окружения MORE. Для этого выполните следующую команду в терминале:

    export MORE=-e

    Чтобы это изменение применялось автоматически при каждом запуске терминала, добавьте эту строку в файл конфигурации вашего оболочки:

    echo 'export MORE=-e' >> ~/.bashrc

Заключение

Эти методы позволят вам эффективно работать с командой more в Debian 12, не беспокоясь о новом поведении, которое может мешать вашему привычному потоку работы. Если ни одно из предложенных решений вас не устраивает, вы можете рассмотреть возможность использования альтернативных программ для просмотра файлов, таких как less, который также предлагает множество полезных функций и менее строгую навигацию.

Оцените материал
Добавить комментарий

Капча загружается...