Горячие клавиши bash
Горячие клавиши bash можно разделить на несколько больших групп:
CTRL-команды:
Ctrl + a – переход к началу строки
Ctrl + b – аналог стрелки влево (ну, если не работает)
Ctrl + c – отменить редактирование команды или прекратить работу (если запущена)
Ctrl + d – аналог Delete. Если строка пустая – выход из shell
Ctrl + e – переход к концу строки
Ctrl + f – аналог стрелки вправо
Ctrl + g – выход из режима дополнения
Ctrl + h – аналог BackSpace
Ctrl + i – аналог Tab
Ctrl + k – удалить всё до конца строки
Ctrl + l – Очистить экран (набранная строка и даже позиция курсора остаётся)
Ctrl + r – (ну, это все знают) – поиск по истории набранных команд
Ctrl + R – поиск по истории набранных команд назад (это когда есть несколько вариантов и проскочили нужный)
Ctrl + t – поменять местами текущий символ с предыдущим
Ctrl + u – удалить всё до начала строки
Ctrl + v – преобразует следующую клавишу в её символьное отображение (Enter – ^M, Esc – ^[ и т.д.)
Ctrl + w – удалить от курсора до начала слова
Ctrl + x дважды – скачок между началом строки и текущей позицией курсора.
Ctrl + x @ – Показывает возможные варианты дополнения доменного имени (вот это мне воспроизвести не удалось).
Ctrl + y – вставить из буфера (все удаляемое по горячим клавишам удаляется не просто так, а в буфер)
Ctrl + z – притормозить/остановить выполнение команды в фон
Ctrl + _ – отмена последнего изменения
ALT-команды
Alt + < – к первой команде в истории (вообще к самой первой в .bash_history)
Alt + > – к последней команде в истории
Alt + ? – показать весь список вариантов дополнения (аналог 2Т – см. ниже)
Alt + * – вставить все возможные варианты дополнения
Alt + / – попытатся дополнить имя файла (из имеющихся в текущем каталоге)
Alt + . – вставить последний аргумент из предыдущей команды
Alt + b – влево на слово
Alt + c – сделать первую букву слова заглавной (и перейти к следующему слову)
Alt + d – удалить от текущей позиции до конца слова
Alt + f – вправо на слово
Alt + l – сделать первую букву слова строчной (и перейти к следующему слову)
Alt + n – искать по истории (но не сразу, а после полного ввода и нажатия Ентер)
Alt + p – искать по истории назад
Alt + r – очистить всю строку
Alt + t – поменять слова местами
Alt + u – сделать все буквы заглавными от текущей позиции до конца слова
Alt + BackSpace – Удалить от текущей позиции до начала слова
Esc-команды
Esc+d – удалить от курсора до конца слова
Esc+f – вправо на слово
Esc+b – влево на слово
Esc+t – поменять местами слова
Tab-команды
2T обозначает дважды нажатый Tab
2T – все доступные команды (это тоже все знают)
(string)2T – все доступные команды начинающиеся на string
/2T – все каталоги, включая скрытые. Для текущего надо набрать ./2Т
*2T – каталоги, кроме скрытых
~2T – все пользователи, присутствющие в /etc/passwd
~f2T – все пользователи, присутствющие в /etc/passwd, начинающиеся на f
$2T – все системные переменные
@2T – все записи в /etc/hosts
=2T – вывод наподобии ls или dir
Просто команды
!! – выполнить последнюю команду в истории
!abc – выполнить последнюю команду в истории, начинающуюся на abc
!a:p – напечатать последнюю команду в истории, начинающуюся на a
!n – выполнить n-ную команду в истории
!$ – посдедний аргумент последней команды
!^ – первый аргумент последней команды
^abc^xyz – заменить abc на xyz в последней команде и выполнить результат