Какие команды я могу использовать, чтобы сбросить и очистить мой терминал?

Я использовал команду:

reset

очистить мой терминал. Хотя я вполне уверен, это не то, что я должен делать. Сброс, как имя предполагает, сбрасывает Ваш весь терминал (изменяет много материала). Вот то, что я хочу:

Я в основном хочу использовать команду clear. Однако, если Вы очищаете и затем прокручиваете, Вы все еще получаете тонны материала до. В целом это не проблема, но я смотрю на грубые журналы, которые длинны, и я хочу удостовериться, что я просто просматриваю новый. Я знаю, что мог использовать more или что-то как этот, но я предпочитаю этот подход.

64
задан 01.11.2016, 19:35

7 ответов

Буфер scrollback не является функцией удара, но терминальной программы. Вы не сказали что терминал Вы использование.

При использовании xterm, Вы смогли очищать сохраненные строки путем повторения ESC-c к терминалу.

Это может или не может работать над любой терминальной программой, которую Вы используете.

На Linux это будет, вероятно, работать:

echo -e '\0033\0143'

на FreeBSD эхо не принимает-e, таким образом, можно попробовать:

printf '\033\143'
57
ответ дан 07.12.2019, 08:15

Используйте правильный инструмент для каждого задания:

  • Использовать clear очистить окно терминала.

  • Использовать reset сбрасывать Ваш терминал, когда это испорчено управляющими последовательностями.

  • Использовать cat только, когда Вы хотите передать много потоком данных от одного места до другого непрерывного.

  • Используйте программу пейджера такой как less или most просматривать страницы вывода.

  • Использовать tail -f /var/log/foo.log /var/log/bar.log наблюдать несколько различных файлов журнала.

    • С GNU tail, -F вариант лучше, потому что он может продолжиться после файла, даже когда новый файл появляется в своем месте, как характерно для файлов журнала.
51
ответ дан 07.12.2019, 08:15

Только предоставить технический ответ: reset повторно инициализируйте терминал, как будто он был вновь открыт с нуля. stty sane сделает большую ту же функциональность (без сброса). Это - то же самое как ^L (Ctrl+L) (irrc), и tput clear. Несмотря на то, что предыдущий плакат (@grawity) сказал, clear не производит набор новых строк. Это отправляет TERMсброс, как определено в terminfo или termcap, для меня, с помощью gnome-terminal (xterm) это совпадает с командой perl -e'print "\33[H\33[2J"'.

Если Вы хотите просто очистить буфер - по сравнению со сбросом целого терминала, попробуйте это tput reset. Это должно быть очень быстро, и сделать то, что Вы хотите. (Хотя действительно необходимо читать файлы с less)

tput reset, отправляет значение terminfo за сбросом - на моем терминале (xterm) это совпадает с perl -e'print "\33c"'

23
ответ дан 07.12.2019, 08:15

Вероятно, лучший способ очистить все состоит в том, чтобы использовать функцию терминала:

  • Konsole: представление Ctrl+Shift+K → очищает Scrollback и сброс
  • Терминал GNOME: отредактируйте сброс → и ясный
  • PuTTY: Ctrl+right-click → очищают Scrollback

Таким образом, оба буфера вытерты чистые, и терминальное состояние сбрасывается к точно, что это было на запуске (который может или не может совпасть с использованием reset).

8
ответ дан 07.12.2019, 08:15
less -W +F foo.log

+F для, "следуют", подобный tail -f но позволяет Вам прокрутить назад также.

Все находящиеся в vte терминалы (GNOME, Xfce, Roxterm) и KDE Konsole позволяют Вам использовать колесико прокрутки для прокрутки внутри less. Я нахожу это вполне convienent.


Альтернатива clear:

perl -e 'print "\n"x512;'

xterm -e 'tail -f foo.log'
3
ответ дан 07.12.2019, 08:15

Если Вы хотите быть уверенными, что Вы смотрите на новые записи в файле журнала, вероятно, лучше использовать хвост вместо clear / cat который я предполагаю, что Вы используете.

0
ответ дан 07.12.2019, 08:15

Хм. Я предполагаю, выполняете ли Вы консоль, Вам не повезло. Это раньше было Вами, мог просто "очистить scrollback". Konsole не позволит Вам больше делать это. Необходимо сбросить его также, таким образом, это закрывает любую программу, которую Вы запускали. Я предполагаю, что мне нужна новая терминальная программа......

0
ответ дан 07.12.2019, 08:15

Теги

Похожие вопросы