Ответы:
ctrl+ Lпросто очистить экран терминала.
Это сочетание клавиш, эквивалентное команде clear -x. ссылка
Это свойство bash, так что вы не нашли его под сочетаниями клавиш в вашем gnome-терминале. От man bash:
clear-screen (C-l)
Clear the screen leaving the current line at the top of the
screen. With an argument, refresh the current line without
clearing the screen.
Смотрите подробный список сочетаний клавиш Bash .
clear, потому что она не стирает вашу историю терминала, в то время как команда clearделает, если вы не добавите -xаргумент, так как: clear -x.
Если используемая вами оболочка не перехватывает ее, вы вводите символ «Форм подачи» в своем терминале. Если приложение терминала не перехватывает или не использует какое-либо нажатие клавиши, Ctrl+ Letter переводится в код ASCII буквы минус 64 (1). 65 - это ASCII-код «A», «L» - 12-я буква -> код 76. Если оболочка не знает, что делать с кодом, она печатает его.
Печать FF-символа привела к появлению новой страницы на линейном принтере и чистому экрану на терминале (да, тогда я использовал VT-52 со скоростью 300 бод).
Так что Ctrl+ L12, что FF. Точно так же Ctrl+ I- это TAB, и Ctrl+ Gзвонит в колокол ---, если терминал или оболочка не перехватывает его, как, например, Ctrl+ C.
Обратите внимание , с другой ответ: кажется , что Баш делать перехват CTRL- Lи делать clear. Приятно отметить, что bashавторы связали ключ с командой, которая будет делать более или менее то же самое, что код ASCII делал на старых терминалах!
С другой стороны, в моем zshсочетании CTRL- Iработает как TABи CTRL- Hкак Backspace(2).
Старый хороший ASCII ... (обратите внимание, что буква L находится в столбце 4, строке 12, она имеет код ASCII 4 * 16 + 12 = 76).

Исходное изображение здесь , из статьи в Википедии об ASCII .
(1) Ctrlдействительно используется, чтобы очистить бит 7.
(2) это источник шутки «не удаётся удалить слово», которую вы когда-нибудь находите, например, «это была плохая ^ H ^ H ^ не такая хорошая идея» ... (обычно слово сильнее, чем плохое!)
^Hs или ^Ws удобна, когда вы не можете использовать зачеркивания. :)
Control-Lперехвачен и интерпретируется Баш ( на самом деле с помощью в readlineбиблиотеке , которая обрабатывает интерактивное редактирование в командной строке). Это связано с clear-screenфункцией, как писал @souravc.
Обратите внимание на значение Control-L: он определен как подача формы в таблице символов ASCII, но это ничего не значит, если какая-то программа не интерпретирует его соответствующим образом. Терминал не очищает экран, когда видит канал формы, что можно проверить, сохранив ^ L в файле и напечатав его с помощью cat. Когда bash/readlineвидит ^L, он выполняет clear-screenфункцию. Это отправляет последовательность символов, понятную вашему эмулятору терминала (как описано в termcap или terminfo), и дает эффект очистки экрана.
В очень старых принтерах, a ^Lпродвигает бумагу, начинающую печатать на следующем листе, отсюда и название «подача формы». Но современные терминалы и эмуляторы терминалов следуют более новому стандарту ANSI, в котором управляющими командами являются многосимвольные «escape-коды», которые начинаются с ^[(escape). Когда bash видит вас ^L, он, вероятно, отправляет последовательность из двух команд ESC [ H ESC [ J, которая перемещается в верхний левый угол экрана и очищает все, что находится под ним (отсюда и весь экран).
ESC [ ESC [ Jтакже очищает историю команд, а CTRL + L последовательность - нет. Последовательность отсылаются терминалу скорее ESC [ H ESC [ 2 J, идти вперед попробуйте сами с этой командой: printf "\033[H\033[2J".
Как все уже хорошо объяснили, что такое Ctrl+ Lи что делает, но никто не объяснил, как «отменить» команду, вот несколько команд, которые вы можете набрать, чтобы вернуть вас к тому, что вы делали:
history
даст вам последние 20 команд, которые вы ввели.
tail --lines=20 /var/log/dpkg.log
даст вам последние 20 строк вывода любой установки пакета, которую вы выполняли