Горячие клавиши терминала Linux
Терминал — один из самых мощных инструментов Linux. С помощью него можно настроить и сделать практически всё в этой операционной системе. Чтобы сделать работу в терминале ещё более удобной и продуктивной разработчики добавили различные сочетания клавиш.
В этой статье мы собрали самые полезные горячие клавиши терминала Linux, которые могут пригодится вам в работе. Здесь есть комбинации клавиш для навигации по истории команд, коррекции ошибок и управления окном терминала. Все клавиши расположены в случайном порядке.
Горячие клавиши терминала Linux
1. Tab
Без этого сочетания терминалом пользоваться невозможно, и поэтому его знают все. Одно нажатие клавиши Tab автоматически дополняет текущую команду или путь к файлу если возможен только один вариант. Два нажатия по ряд показывают возможные варианты автодополнения. Это делает набор команд и путей к файлам намного быстрее.
2. Ctrl + R
После нажатия Ctrl+R появляется строка поиска в которой вы можете начать вводить имя команды, которую надо выполнить. Система найдёт все команды, которые ранее выполнялись с таким началом и отобразит самую свежую. Вы можете уточнить поиск добавив ещё несколько символов. Для выполнения команды просто нажмите Enter, для редактирования Esc.

3. Ctrl + C
Это сочетание клавиш позволяет прервать работу любой программы, которая выполняется в терминале. После нажатия Ctr + C программе отправляется сигнал SIGINT и если она не обрабатывает его особым образом выполнение программы завершается. Некоторые программы перехватывают сигнал и перед завершением выполняют кое какие действия по сохранению данных и завершению операций, например пакетный менеджер zypper.
4. Ctrl + Z
С помощью Ctrl+Z вы можете перевести текущую программу в фоновый режим. Обычно, если вам надо чтобы программа выполнялась в фоновом режиме просто добавьте символ & после команды. Но если вы забыли это сделать поможет это сочетание клавиш. Чтобы посмотреть задачи, которые сейчас работают в фоне используйте команду jobs, а для возврата задачи в нормальный режим — команду fg.

5. Ctrl + D
Сочетание клавиш Ctrl+D можно считать альтернативой команды exit. Если вы подключены по SSH то сессия будет разорвана. Если вы работаете в терминале напрямую, то окно будет закрыто.
6. Ctrl + L
Альтернатива команды clear. Позволяет очистить вывод терминала. Очень удобно для создания снимков экрана и просто для очистки лишней информации.
7. Ctrl+P и Ctrl+N
Эти сочетания клавиш альтернативы клавишам стрелки вверх и вниз. Первое показывает предыдущую введенную команду, а второе следующую. Так вы можете перемещаться по истории команд. Это не удобнее стрелок, но иногда может быть полезно.
8. Ctrl + A и Ctrl + E
Перемещаться можно не только по истории команд, но и по текущей строке. Эти горячие клавиши — аналоги клавиш Home и End. Первая комбинация перемещает курсор в начало строи, а вторая в конец.
9. Ctrl + U и Ctrl + K
С помощью первого сочетания можно удалить весь текст от начала строки до позиции курсора, а с помощью второго — от позиции курсора и до конца строки. Это может быть полезно если вы ввели неверную команду и не хотите стирать её по одному символу.
10. Ctrl + W
Нажав Ctrl+W вы можете стереть слово перед курсором. Если курсор находится в середине слова, то будут стёрты все символы от курсора до начала слова. Удобнее всего ставить курсор после слова, которое нужно убрать.
11. Ctrl + Y
С помощью Ctrl + Y вы можете вставить текст вырезанный с помощью Ctrl + U, Ctrl + K и Ctrl + W. Текст будет вставлен туда, где находится курсор.
12. Ctrl + B и Ctrl + F
Аналог для клавиш стрелка вправо и стрелка влево. Первое сочетание позволяет перемещаться на один символ вправо, а второе на один символ влево.
13. Ctrl + T
Заменяет символ, находящийся под курсором на предыдущий символ. Или перемещает символ перед курсором к концу строки.
14. Ctrl +X затем Ctrl + E
Открывает текущую команду в текстовом редакторе. Если в переменной EDITOR редактор не задан, то будет использоваться nano. После редактирования и сохранения результата команда будет выполнена. Удобно для написания многострочных скриптов.
15. Alt +.
Аналог команды $!. Позволяет вставить последний аргумент предыдущей команды в позицию курсора. Удобно, если надо выполнить несколько команд с одинаковым аргументом.
16. Alt + B и Alt + F
Эти сочетания позволяют перемещаться по словам, также как их аналоги с Ctrl по символам. Alt + B перемещает курсор на слово влево, а Alt+F на слово вправо.
17. Alt + C, Alt + L и Alt + U
Следующие три сочетания клавиш позволяют играть с регистром символов команды. Первое сочетание — Alt + C делает символ под курсором прописным, а все остальные буквы до конца слова строчными. Alt + L делает все буквы до конца слова строчными, а Alt + U — прописными.
18. Ctrl + S и Ctrl + Q
Если команда выводит информацию слишком быстро, а вам надо прочитать её или скопировать, можно попросить терминал поставить на паузу вывод команды. Для этого нажмите Ctrl +S. Чтобы вернуть всё обратно нажмите Ctrl + Q.
Сочетания клавиш эмулятора терминала
Все сочетания клавиш, перечисленные выше будут работать во всех терминалах и эмуляторах терминала, которые используют командную оболочку Bash или другую популярную оболочку. Но у популярных эмуляторов терминала есть свои горячие клавиши, которые могут вам очень сильно пригодится при работе. Давайте рассмотрим их тоже. В этой статье будут использоваться горячие клавиши из Gnome Terminal, но в других терминалах они похожи.
1. Ctrl + Alt + T
С помощью этого сочетания клавиш можно открыть терминал в большинстве дистрибутивов, основанных на Ubuntu и Debian. Это просто, быстро и удобно.
2. Ctrl + Shift + С и Ctrl + Shift + V
Копирование и вставка — очень важные функции операционной системы. Сочетание клавиш Ctrl + C просто не может работать для копирования, потому что оно используется для завершения команды, поэтому для копирования и вставки была добавлена клавиша Shift.
3. Ctrl + Shift + F
Если вам надо выполнить поиск по выводу в терминале можно воспользоваться сочетанием Ctrl + Shift + F. После нажатия откроется окно ввода, в котором вы можете ввести искомое слово.

4. Shift + ЛКМ и Shift + ПКМ
Здесь ЛКМ и ПКМ — это правая и левая кнопка мышки. Такие программы, как screen и tmux в режиме поддержки работы мышью захватывают контроль мышки и вяжут на неё свои функции. Таким образом обычное копирование и вставка могут стать проблемой. Чтобы этого избежать можно выделять текст сочетанием клавиш Shift + ЛКМ и открывать контекстное меню с помощью Shift + ПКМ.
Выводы
В этой статье мы собрали лучшие сочетания клавиш терминала Linux, которые могут пригодится вам в работе с системой или во время её настройки. А какие горячие клавиши нравятся вам? Какие вы используете? Напишите в комментариях!
Is there a command to close a terminal window via commandline?
Is there a command to close a terminal window via commandline?
10 Answers 10
To close a terminal window you can use the exit command . Alternatively you can use the shortcut ctrl + shift + w to close a terminal tab and ctrl + shift + q to close the entire terminal including all tabs.
You can use the ^D shortcut — that is, hitting Control and d. This works in many shells and shell-like environments. Technically speaking, this key combination emits the end-of-transmission character (ASCII code 04). In gnome-terminal , i.e. bash and other shells, this is interpreted as finishing the interactive session. You can also see this behavior in programs like cat which read from standard input (the keyboard). Try running it without arguments; you can terminate by entering ^D .
is the command you want to use for that.
There is an alternate way, which requires a bit more keystrokes, but is worth knowing.
Using exec command
- Syntax
This will first execute the <command-name> and then exit the shell.
For example, you could do:
which would, effectively, close the window after 1 second.
I know this answer is a little bit late but, If you are using Ubuntu or another Linux distro, simply use Ctrl + D to close the entire terminal.
I initially tried all the rest and they were just not working. For example I see people recommending exit but honestly, it just doesnt work.
I hope someone agrees with me.
![]()
You can use xdotool :
xdotool getactivewindow windowkill
Notice that this will kill all active windows!
If you want to kill only the current window use:
xdotool key —clearmodifiers Ctrl+Shift+Q key —clearmodifiers KP_Enter
![]()
Yes there is.First type echo $$ in terminal to know it’s process id. Then type kill -9 processid .
![]()
To close the terminal whilst leaving all running processes to continue running, you can do the following:
- pause the process using Ctrl + Z , pull it into the background with bg and then disown it, eg:
This will leave the current running process running in the background and close the terminal(i find this to be very useful).
![]()
Yes. The command is exit. Type exit into the terminal and press enter
![]()
I’m using KDE here. I wrote a script and I execute it by right click > execute in console. After the executtion, the newly opened window of konsole, was left open and I had to manualy close it (by pressing X or Alt+F4, or typing exit). I combined two of your answers here (THANKS to the posters) and now the window closes automatically.
Without the & disown and xdotool getactivewindow windowkill, just by using "exit" at the end, nothing happened! Thank you again!
Использование быстрых клавиш в командной строке Linux (BASH)
Эта статья посвящена наиболее часто используемым комбинациям клавиш при работе в командной строке Linux (в основном в командном интерпретаторе bash).
Она точно будет полезна начинающим своё знакомство с Linux и, уверен, пригодится тем, кто уже имеет опыт (не всегда годы практики учат работать быстрее).
Никогда не развивал навыка быстрой печати, но знание не одного десятка hotkey’ев, перечисленных в этом материале, позволяет набирать команды со скоростью мысли.
Я попытался продемонстрировать многие примеры при помощи анимированных gif’ок – иногда несколько кадров больше скажут, чем несколько абзацев текста.

Материал был обкатан на вебинаре, и оттуда взяты все примеры (под каждым примером указано время, когда об этом рассказывалось в видео). Видео больше часа и без монтажных склеек, в статье же вынесены все главные моменты и попытка дать более точные определения.
Общие слова и замечания
Большинство продемонстрированных клавиш стандартны для «командной строки Linux», но часть из этих комбинаций специфичны для bash (поэтому и пометил это в заголовке). На текущий момент BASH – наиболее распространенный командный интерпретатор, используемый по умолчанию в большинстве Linux-дистрибутивов. В других командных интерпретаторах или, проще говоря, shell’ах (рекомендую попробовать zsh и fish) могут быть небольшие отличия в работе. Также часть комбинаций прописана в «настройках по умолчанию» (например, в файле /etc/inputrc или в /etc/bashrc), которые тоже могут различаться в разных дистрибутивах. И бывает, что некоторые клавиши могут быть настроены и перехватываться графической оболочкой, в которой запущен командный интерпретатор.
Если вдруг что-то из указанного мной в этой статье у вас не сработало, пишите в комментариях «название — версию shell и название — версию дистрибутива».
Часть демонстрируемых клавиш относятся к «настройкам терминала». А часть – клавиши из командного интерпретатора BASH, и их можно посмотреть, почитав мануал по bash’у (огромный текст – пользуйтесь поиском):
![[00:10:40]](https://habrastorage.org/getpro/habr/upload_files/a3c/f1c/547/a3cf1c547ed8e06a5f8d9f1aa334659c.png)
[00:10:40]
^^^ На приведенном фрагменте из мануала: Запись «(C-r)» означает Ctrl-r , а «M->» означает Alt-> .
«M» — это «Meta-клавиша»
Из истории: «М» — это «Metа-клавиша», сейчас вместо неё используется клавиша Alt , либо клавиша Esc . Я чаще в её качестве буду использовать клавишу Alt .
Замечание: Если у кого-то настроено переключение раскладки по комбинации Alt-Shift , то учитывайте, что в комбинациях, перечисленных далее и содержащих Alt-Shift , вам надо будет использовать скорее клавишу Esc-Shift (или поменять комбинацию для переключения раскладки клавиатуры, у меня, например, раскладка переключается по CapsLock ).
^^^ Здесь показано на примере использования комбинаций для перемещения по «словам» командной строки: Alt-b (или, что то же самое, Esc-b ) и Alt-f (или, что то же самое, Esc-f )
Для демонстраций нажатых клавиш использую утилиту «screenkey».
Upd: При этом стоит упомянуть, что по умолчанию bash использует emacs-режим редактирования командной строки и поэтому многие комбинации клавиш пришли из редактора emacs. Для знающих редактор vi, могу порекомендовать переключить (добавив «set -o vi» в
/.bashrc) bash в vi-режим редактирования и пользоваться привычными комбинациями из vi.
Терминал
Итак, начнем с клавиш из настроек терминала. Их можно посмотреть, выполнив команду:
♯ stty -a

А перенастроить, например, так:
♯ stty intr НоваяКлавиша
Ctrl-c – сигнал SIGINT
Первые две комбинации клавиш достаточно важные, и часто «недавно перешедшие с Windows на Linux» НЕправильно их используют: продолжая, как в DOS, для завершения команд использовать комбинацию «Ctrl-z», что неверно. В Linux же для того, чтобы попросить (команде посылается сигнал SIGINT) приложение прервать свою работу, используется Ctrl-c .
Ctrl-z – сигнал SIGTSTP
А комбинация Ctrl-z используется, чтобы попросить (команде посылается сигнал SIGTSTP) приложение остановить свою работу (не завершая) – «поставить на паузу». Ну, а «разбудить» его можно командой «fg» (или «bg»).
Ctrl-d – EOF(окончание ввода данных)
Далее разберем комбинацию Ctrl-d . В выводе «stty -a» эта комбинация значится как «EOF», что означает «окончание ввода данных». Для примера покажу, как можно создать текстовый файл с определенным текстом без использования текстового редактора:
^^^ Здесь видно, что любой набираемый текст перенаправляется в файл /tmp/File.txt, и нет никакой фразы (типа «Горшочек, не вари»), которую бы команда cat восприняла как «окончание ввода» – точнее, для этого как раз и надо нажать Ctrl-d .
Также пользуюсь комбинаций Ctrl-d для того, чтобы выйти из консоли (например, после того как переключился командой su под другого пользователя или зайдя по ssh на другую машину) – вместо набора команды «exit» или «logout»:
^^^ В правом терминале отображаю историю команд.
. (а внимательный зритель догадается, какой «супер-секретный» пароль у root’а на стенде)
Ctrl-v – ввод следующего символа
Комбинация Ctrl-v позволяет вставить в командную строку следующий за ней символ, не воспринимая его как спецсимвол. (Параметр lnext в выводе «stty -a»)
^^^ Здесь для примера показываю, как в скрипте выводить строку текста с использованием табуляции (знаю, что можно использовать \t в команде echo: echo -e «\tTEXT» , но не у всех утилит есть такая возможность, а подобная необходимость вставить «спецсимвол» случается).
^^^ А в этом примере у меня есть файл «New Text Document.txt», созданный в ОС Windows при помощи программы Notepad в директории, которую я затем открыл на доступ по сети и примонтировал в Linux в директорию /mnt. Программа Notepad (в отличии от Notepad++) создает файл в DOS-формате – в конце каждой строки использует дополнительный символ «Возврат каретки». Терминалы часто по умолчанию этот символ не отображают, но он есть, и поэтому, например, команда ‘ grep «m$» /mnt/New\ Text\ Document.txt ‘ не выведет строку, заканчивающуюся на букву «m». Команда cat с опцией «-v» отображает этот символ. А для того, чтобы при выводе заменить или удалить это символ, воспользовался командой tr (хотя можно было бы использовать специальную для этого утилиту unix2dos).
Ctrl-l – очищает экран
Комбинация Ctrl-l – «очищает» экран.
История команд
«Работа с историей команд» – классическая тема обычно из любого начального курса по Linux (по крайней мере, среди тех курсов, которые читаются у нас в «Сетевой Академии ЛАНИТ»). И многие, кто имеет хотя бы небольшой опыт работы с командной строкой, историей команд пользуются – как минимум знают, что она есть, и используют стрелки «вверх» (отобразить предыдущую команду) и «вниз» (отобразить следующую после отображаемой команду в истории команд), чтобы выбрать, какую из ранее введенных команд либо снова выполнить, либо подредактировать и запустить отредактированную. Но помимо стрелок еще есть ряд полезных комбинаций клавиш, которые позволяют работать с историей команд, – быстрее находить нужные команды.
Ctrl-r – Поиск по истории
Комбинация Ctrl-r позволяет искать в истории команд команды, содержащие указанный далее текст.
^^^ В этом примере мне понадобилось из истории вытащить команду, содержащую текст «su»: нажав Ctrl-r и набрав искомый текст «su», я увидел самую недавнюю команду, содержащую «su»; при повторном нажатии Ctrl-r отображается предыдущая команда, содержащая «su» и т.д. При необходимости изменить команду жму стрелку «вправо» и правлю текст, а чтобы запустить команду — нажимаю Enter .
PgUp/PgDown – Поиск по истории
PgUp – отображает предыдущую команду начинающуюся с уже введенного текста, PgDown – следующую.
^^^ В этом примере перемещаюсь между командами, начинающимися с «cat». (Часто также ищу команды, начинающиеся с «sudo». Или если мне нужно снова отредактировать какой-то файл, который недавно редактировал: набираю «vi», жму несколько раз PgUp , а затем Enter .)
В дистрибутивах где это настроено — в /etc/inputrc есть строки:
Alt-_/Alt-./Alt— – вставка аргументов
Комбинация Alt-_ (выполняется нажатием Alt , Shift , — ) – вставляет последний аргумент из предыдущих команд. (Аналогично работает комбинация Esc-. или, что то же самое, Alt-. )
^^^ В данном примере видно, как повторные нажатия Alt-_ вставляют аргументы от пред-пред-…-идущих команд.
Комбинация Alt — – позволяет указать (порядковый номер с конца), какой аргумент вставить клавишей Alt-_ из предыдущей команды.
^^^ В данном примере вставляю в командную строку различные аргументы из предыдущей команды.
Alt-# – текущую команду преобразовать в комментарий
Бывает, во время набора очень длинной команды понимаю, что мне нужно что-нибудь посмотреть или дополнительно сделать (например, глянуть, какие файлы есть в определенной директории, прочитать мануал по команде, установить нужный пакет…). Что делать с уже набранным текстом? Хотелось бы посмотреть нужную информацию и продолжить набирать команду, а не начинать печатать её сначала. Alt-# (выполняется нажатием Alt , Shift , 3 . Также можно использовать Esc-# ) – преобразует текущую набранную команду в комментарий в истории – добавляет символ «#» в начало строки и добавляет полученную строку в историю команд.
Ctrl-o – повтор команд из истории
Комбинация Ctrl-o позволяет повторять серию команд из истории. То есть нужно из истории команд стрелками выбрать первую команду из серии и нажать Ctrl-o – это выполнит текущую команду и выведет из истории следующую. Дальше можно продолжать нажимать Ctrl-o с тем же эффектом.
^^^ В примере я написал три команды: одна увеличивает на 1 переменную, которой соответствует год; вторая выводит переменную-год; третья показывает, сколько дней в феврале в указанном году. Дальше, нажимая Ctrl-o , повторяю эту серию из трех команд много раз (один кадр соответствует трем нажатиям).
Автодополнение
Tab – автодополнение (в контексте)
Во многих командных интерпретаторах (и в bash в том числе) используется такая возможность, как автодополнение. Как минимум нужно знать, что по нажатию клавиши Tab дописывается название команды. В bash по умолчанию обычно настроено так, что если имеется только один вариант дополнения, то он дописывается по нажатию Tab (также можно использовать Ctrl-i и Esc-Esc ). Когда вариантов дополнения много, то по первому нажатию Tab дописывается только общая часть (если она есть). А по второму нажатию Tab отображается список всех доступных вариантов. Дальше можно набрать еще символов – уточнить, какое из дополнений нужно, и снова нажать Tab . То же самое с другими дополнениями: имен файлов, имен переменных.
^^^ Здесь, например, смотрю (нажав дважды Tab ), что есть несколько команд, начинающихся с «if», добавив «c» и нажав Tab , получаю набранной команду «ifconfig».
^^^ В этом примере дополняю аргументы команды (здесь имена файлов). Также видно, что в случае, когда вариантов много и все не умещаются в окне терминала, их список отображается утилитой для постраничного просмотра (также при очень большом списке вариантов выдается запрос вида «Display all 125 possibilities? (y or n)» или, как в этом примере, при малом количестве — «—More—».
Дополнения имен пользователей, переменных
Часто, когда дописываются аргументы команд по Tab , дописываются имена файлов. Но стоит также отметить, что, в зависимости от контекста, по Tab дописываются и имена переменных (аргументы, начинающиеся с символа «$»), имена пользователей (аргументы, начинающиеся с символа «
^^^ Здесь, чтобы набрать «$HISTFILESIZE», вместо 13 символов набрал 8 символов ( $ H I Tab F Tab S Tab ). Помимо того, что так быстрее, это еще и позволяет допускать меньше ошибок при наборе команд, так как не просто печатаю текст, а выбираю из списка установленных переменных.
^^^ Здесь дописываю имена пользователей (фактически пишу адрес домашней директории).
Также bash может дополнять не потому, что набранный текст начинается с определенного символа, а по определенным комбинациям клавиш.
Список того, что может дополнять bash, можно посмотреть командой:
♯ bind -P | grep «complet»
Так, например, видно, что:
– покажет список имен пользователей, начинающихся с набранных символов, а дополнить комбинацией Esc-
Ctrl-x @ – список имен машин (согласно /etc/hosts), начинающихся с набранных символов, а дополнить – Esc-@ ;
Ctrl-x $ – список имен переменных, заданных в этой сессии (можно их также посмотреть командой set), а дополнить – Esc-$ ;
Ctrl-x ! – список команд (согласно доступных: $PATH, alias, функций, встроенных команд), а дополнить – Esc-! ;
Ctrl-x / – список имен файлов, а дополнить – Esc-/ .
Alt-* – вставить дополнения, Ctrl-x * – развернуть шаблон
Esc-* (точнее, Esc Shift 8 ) или, что, то же самое, Alt-* (точнее, Alt , Shift , 8 ), вставит все варианты дополнения в командную строку. Аналогично можно развернуть список файлов, переменных, имен пользователей.
В примерах ниже разворачиваю список файлов:
[00:46:30] ♯ bind -P | grep ‘*’
Ctrl-x * – развернет уже написанный в командной строке шаблон, как в примере ниже:
Редактирование
Ctrl-w/u/k – вырезать слово/начало/конец строки
Ctrl-w – вырезать слово (от текущего положения курсора до ближайшего ранее в строке пробела/табуляции). Вырезанное можно затем вставить комбинацией Ctrl-y.
Ctrl-u – вырезать начало строки (от текущего положения курсора. Если курсор в конце строки, то вырежет целиком строку). Вырезанное можно затем вставить комбинацией Ctrl-y .
Ctrl-k – вырезать конец строки (от текущего положения курсора. Если курсор в начале строки, то вырежет целиком строку). Вырезанное можно затем вставить комбинацией Ctrl-y .
Ctrl-y – вставить вырезанное
Ctrl-y – вставить вырезанный фрагмент командной строки. (В bash используется свой буфер для хранения вырезанных фрагментов – называется «kill ring»).
Важно: Удобно использовать с Alt-y (позволяет «прокручивать» варианты вставки из буфера).
Ctrl-x Ctrl-e – редактировать в $EDITOR
Нажав комбинацию Ctrl-x Ctrl-e , можно редактировать командную строку в любом внешнем редакторе (по умолчанию часто используется редактор vim; переназначить редактор можно, указав в переменной EDITOR). Часто редакторы имеют больше продвинутых возможностей в редактировании текста. Особенно удобно, если редактор умеет подкрашивать синтаксис команд и имеет различные встроенные инструменты для быстрого поиска и исправления ошибок.
Также эту возможность часто использую, когда набранную команду, разросшуюся до нескольких строк, хочу сохранить в виде отдельного скрипта – тогда переключаю редактирование команды в редактор и в нём сохраняю набранный текст в файл, как в примере ниже:
Ctrl-_ – undo
Ctrl-_ (точнее, нужно нажать Ctrl Shift — ) или Ctrl-x Ctrl-u – отменяет последние правки при редактировании командной строки.
Перемещение
Ctrl-a/e – в начало/конец строки
Ctrl-a и Ctrl-e – перемещение в начало и конец командной строки соответственно. Можно, конечно, пользоваться клавишами Home и End , но так быстрее при использовании, например, таких клавиш, как вырезание Ctrl-w и вставка Ctrl-y .
Alt-b/f и Ctrl-←/→ – предыдущее/следующие слово
Alt-b (и тот же эффект у Ctrl-Left ) – переход в начало предыдущего слова.
Alt-f (и тот же эффект у Ctrl-Right ) – переход в конец следующего слова.
Настройки
Подробнее значения действия редактирования командной строки bash можно посмотреть в мануал по bash’у. Действия, упомянутые в этой статье (в порядке упоминания):
clear-screen (C-l) Clear the screen, then redraw the current line, leaving the current line at the top of the screen.
reverse-search-history (C-r) Search backward starting at the current line and moving `up’ through the history as necessary. This is an incremental search.
reverse-search-history (C-r) Search backward starting at the current line and moving `up’ through the history as necessary. This is an incremental search.
history-search-backward Search backward through the history for the string of characters between the start of the current line and the point. This is a non-incremental search.
history-search-forward Search forward through the history for the string of characters between the start of the current line and the point. This is a non-incremental search.
yank-last-arg (M-., M-_) Insert the last argument to the previous command (the last word of the previous history entry). With a numeric argument, behave exactly like yank-nth-arg. Successive calls to yank-last-arg move back through the history list, inserting the last word (or the word specified by the argument to the first call) of each line in turn. Any numeric argument supplied to these successive calls determines the direction to move through the history. A negative argument switches the direction through the history (back or forward). The history expansion facilities are used to extract the last word, as if the «!$» history expansion had been specified.
digit-argument (M-0, M-1, . M—) Add this digit to the argument already accumulating, or start a new argument. M— starts a negative argument.
insert-comment (M-#) Without a numeric argument, the value of the readline comment-begin variable is inserted at the beginning of the current line. . The default value of comment-begin causes this command to make the current line a shell comment.
operate-and-get-next (C-o) Accept the current line for execution and fetch the next line relative to the current line from the history for editing. A numeric argument, if supplied, specifies the history entry to use instead of the current line.
complete (TAB) Attempt to perform completion on the text before point. Bash attempts completion treating the text as a variable (if the text begins with $), username (if the text begins with
), hostname (if the text begins with @), or command (including aliases and functions) in turn. If none of these produces a match, filename completion is attempted.
complete-username (M-
) Attempt completion on the text before point, treating it as a username.
possible-username-completions (C-x
) List the possible completions of the text before point, treating it as a username.
complete-hostname (M-@) Attempt completion on the text before point, treating it as a hostname.
possible-hostname-completions (C-x @) List the possible completions of the text before point, treating it as a hostname.
complete-variable (M-$) Attempt completion on the text before point, treating it as a shell variable.
possible-variable-completions (C-x $) List the possible completions of the text before point, treating it as a shell variable.
complete-command (M-!) Attempt completion on the text before point, treating it as a command name. Command completion attempts to match the text against aliases, reserved words, shell functions, shell builtins, and finally executable filenames, in that order.
possible-command-completions (C-x !) List the possible completions of the text before point, treating it as a command name.
complete-filename (M-/) Attempt filename completion on the text before point.
possible-filename-completions (C-x /) List the possible completions of the text before point, treating it as a filename.
insert-completions (M-*) Insert all completions of the text before point that would have been generated by possible-completions.
glob-expand-word (C-x *) The word before point is treated as a pattern for pathname expansion, and the list of matching filenames is inserted, replacing the word. If a numeric argument is supplied, an asterisk is appended before pathname expansion.
unix-word-rubout (C-w) Kill the word behind point, using white space as a word boundary. The killed text is saved on the kill-ring.
unix-line-discard (C-u) Kill backward from point to the beginning of the line. The killed text is saved on the kill-ring.
kill-line (C-k) Kill the text from point to the end of the line.
yank (C-y) Yank the top of the kill ring into the buffer at point.
yank-pop (M-y) Rotate the kill ring, and yank the new top. Only works following yank or yank-pop.
undo (C-_, C-x C-u) Incremental undo, separately remembered for each line.
backward-word (M-b) Move back to the start of the current or previous word. Words are composed of alphanumeric characters (letters and digits).
forward-word (M-f) Move forward to the end of the next word. Words are composed of alphanumeric characters (letters and digits).
bind -P
Можно посмотреть, какие клавиши к каким действиям редактирования командной строки bash привязаны – для этого можно воспользоваться командой «bind -P».
Есть и много других интересных комбинаций – для примера можно глянуть:
Клавиши, переключающие регистр букв:
♯ bind -P | egrep «case|capitalize»
Клавиши, меняющие слова/буквы местами:
♯ bind -p | grep «transpose»
Также можно настроить свои привязки – например, чтобы по комбинации «Ctrl-f» выводился результат команды «date»:
/etc/inputrc (настройки библиотеки readline)
Так как bash и многие shell’ы используют библиотеку readline для взаимодействия с командной строкой, то можно перенастроить соответствия комбинаций клавиш и действий в /etc/inputrc.
Например, такие строки меняют поведение по умолчанию клавиш «Вверх» и «Вниз»
. вместо предыдущей/последующей команды они будут включать поиск по истории команд – очень удобно, часто этим пользуюсь:
Коды клавиш можно посмотреть, используя комбинацию Ctrl-v , упомянутую выше в этой статье.
Полезных клавиш, делающих более удобной и быстрой работу в командной сроке, достаточно много, и в этой статье я перечислил только малую часть этих комбинаций клавиш. Зато наиболее часто используемые комбинации.
Если, по вашему мнению, стоило упомянуть какие-то еще полезные комбинации — напишите в комментариях.
На этом всё. Надеюсь, было полезно. Если есть какие-то вопросы и уточнения, пишите, я буду рад ответить. Также буду рад упоминаниям в комментариях, что для вас оказалось полезным/новым в этой статье. Так я пойму, что стоило упоминать, а что можно было и пропустить.
Ну, и приходите к нам учиться в «Сетевую Академию ЛАНИТ»!
А в завершение конкурс «для внимательных зрителей».
Кто первым правильно напишет в комментариях ответ на три вопроса, получит 25% скидку на курс по написанию Bash-скриптов:
Дата, когда проходил вебинар «Сетевой Академии ЛАНИТ» по теме этой статьи.
Команды терминала Linux
В любой операционной системе есть свой свод выражений и операций, которые помогают управлять различными файлами и программами. Система Linux не стала исключением. Основным простым источниками управления являются команды для терминала Линукс. Однако существует множество нюансов, которые следует учесть каждому человеку. Начинающему пользователю сложно разобраться во всех тонкостях linux terminal, поэтому далее будут рассмотрены основные ошибки новичков и способы их решения.

Как работать в терминале Linux
Ubuntu terminal – средство оправления системой Линукс.
- Под терминалом понимают такое пространство, в котором можно вводить разные запрашивающие выражения и получать на них определенные, заданные системой, ответы.
- Консоль является дополнительным способом связи с сервером при различных технических неполадках.
- TTY – общее место для управления искомым объектом в системе Линукс.
- Эмулятор – программа, в целом дающая доступ ко всем предыдущим элементам.
- Командная оболочка – часть 3-го элемента в этом списке. Ее цель – прием и передача данных.
- Командная строка – место ввода команд для терминала linux.
Базовые правила работы с ним и командами Убунту:
- Искомый объект можно открыть 2 способами: либо перейти из главного меню в Dash и выбрать соответствующую вкладку, либо нажать одновременно клавиши Ctrl, Alt,T.
- Для выполнения команды в терминале Ubuntu достаточно ее написания и нажатия клавиши Enter.
- Также в этой операционной системе действует автодополнение. Поэтому если ввести половину команды в терминале ubuntu и нажать клавишу TAB один раз, то при только единственном выражении она будет дополнена. Особенно это касается команд консоли linux. Если вариантов много, то для выбора нужного на эту клавишу нужно нажать 2 раза.
- Предыдущий пункт работает аналогично для документов, папок, программ и приложений.
- Однако следует уделить особое внимание при вводе записи, поскольку система Линукс очень чувствительна к регистру – при неправильном написании может возникнуть непоправимая ошибка.
- Одновременно 2 разных выражений выполняться не могут.
- В целом вид выражения можно записать в виде: утверждение – опция – параметр 1 – параметр 2.
Сначала команды для терминала linux mint могут быть очень сложными для восприятия. Однако они являются самым быстрым и оптимальным решением для этой ОС.
Основные команды Ubuntu

Основные операции в любой операционной системе связаны с файлами.
Создать файл в Ubuntu
Самый простой способ – с помощью редактора Nano. Следует ввести запись: nano файл.txt.
Более сложный редактор – программа vim. Выражение аналогично: vi файл.txt. Однако следует знать, что есть разные режимы ввода выражения: вставка и командный. С помощью кнопки Esc можно переключаться из одного режима в другой. Для выхода из второго варианта следует нажать :q, а для сохранения этого документа – :w.
Еще более простой вариант создания файла – способ его введения с помощью оператора перераспределения: > файл. Дальше можно вводить любые знаки. Для сохранения нужно нажать клавиши Ctrl, D.
Как открыть файл через терминал Ubuntu
Для открытия документов есть 2 утилиты: cat и tac. Одна выводит данные в прямом порядке запроса, а другая – в обратном. В этом их существенная разница. Язык же выражений у этих утилит одинаков. В целом запрос запишется так: утилита – опции –адрес_файла.
Редактирование файла в терминале Ubuntu
Есть в линукс для этого 2 программы: nano и vim. Первая для новичков, вторая для профессионалов. Их отличия:
- Nano. Перемещение по исследуемому объекту осуществляется с помощью стрелок. Для сохранения документа следует нажать кнопки Ctrl, O, а для выхода – Ctrl,X.
- Vim. Это более гибкая система. Здесь есть 2 режима: вставки и командный. Они дают множество различных привилегий для работы с такими документами.
Выше описаны пути входа в эти редакторы.
Как скопировать файл через терминал Linux
Для перемещения документа из одного каталога в другой достаточно ввести запись: mv
Для простого копирования нужно просто заменить mv на cp.
Как удалить файл через терминал Ubuntu
Следует понимать, что в системе Линукс удаляются объекты окончательно.
Есть 2 выражения для этого процесса: с помощью rm, rmdir. Первая удаляет конкретный документ, а вторая папку (только в том случае, если она полностью пустая).
Команда перезагрузки в Ubuntu
В этом случае следует открыть терминал, ввести соответствующую запись. Ввести пароль и нажать Enter.
Еще один способ перезагрузки – нажать кнопку на панели и выбрать соответствующий пункт.
Выключение через консоль Ubuntu
Самый простой случай – использование сочетаний клавиш SysRq.
Еще можно использовать выражение shutdown. В общем виде запись будет представлена так: $ shutdown [опции] [время] [сообщение] .
Другие команды для терминала Ubuntu
Существует множество других записей:
- Для создания каталога: mkdir dir.
- Для создания архива: tar cf file.tar files.
- Для распаковки архива: tar xf file.tar.
- Для установки и обновления пакета: dpkg -i package.deb.
- Перевести содержимое объекта на какое-нибудь устройство: cat file1.
- Восстановить целостность файловой системы: fsck.vfat /dev/hda1.
И множество других выражений для более гибкой работы с системой.
Что делать, если не вводится пароль в терминале Ubuntu
Алгоритм решения прост:
- Открыть объект настройки sudo с помощью такого выражения: sudo visudo.
- Найти строчку: Defaults env_reset.
- Заменить ее на: Defaults env_reset,pwfeedback.
Готово проблема пароль не вводится sudo решена. Далее просто надо сохранить изменения (Ctrl+O) и закрыть документ.
Как очистить терминал Linux
Самое простое: использование сочетания клавиш Ctrl и L или записью clear. В этом случае очищаются только те документы, с которыми работали перед очисткой.
Для полного очищения системы следует воспользоваться выражением reset.
Как выйти из терминала Ubuntu
Следует сначала открыть искомый объект с помощью одновременного нажатия клавиш Ctrl, Alt и T. А затем ввести команду: sudo shutdown –P. Система будет выключена. Для отмены следует ввести команду: sudo shutdown –С.
Заключение
Команды для терминала Линукс – самый оптимальный вариант управления Убунту. Однако есть свои тонкости, которые следует знать каждому пользователю.