Конечно, изучение команд Linux всегда должно быть вашим приоритетом, но после того, как вы освоите командную строку, вам следует обратить внимание еще на одну вещь.
КОмбинации клавиш в терминале! Вы даже не представляете, насколько они полезны, пока не узнаете, как их использовать, чтобы сделать работу в терминале более продуктивной.
Прежде чем я объясню все сочетания клавиш по отдельности, вот краткая шпаргалка:
Краткое | описание |
---|---|
Ctrl + A | Перемещение в начало строки. |
Ctrl + E | Перемещение в конец строки. |
Ctrl + U | Удалить от курсора до начала строки. |
Ctrl + K | Удалить от курсора до конца строки. |
Ctrl + W | Удалить слово перед курсором. |
Ctrl + L | Очистить экран терминала. |
Ctrl + C | Остановить текущий процесс/команду. |
Ctrl + D | Выйти или выйти из терминала. |
Ctrl + Z | Пауза текущего процесса (может быть возобновлена). |
Ctrl + R | Поиск истории команд (обратный поиск). |
↑ | Показать предыдущую команду (из истории команд). |
↓ | Показать следующую команду (из истории команд). |
!! | Повторить последнюю команду. |
!n | Повторить n-ую команду из истории. |
Tab | Автозавершение команд, файлов или каталогов. |
Tab дважды | Перечислить все возможные варианты завершения. |
Ctrl + Shift + C | Копировать выделенный текст или команду. |
Ctrl + Shift + V | Вставить скопированный текст или команду. |
Ctrl + Shift + N | Открыть новое окно терминала. |
Ctrl + Shift + T | Открыть новую вкладку в терминале. |
Ctrl + Tab или Ctrl + PageDown | Переключаться между вкладками терминала. |
Хотя я использовал заглавные буквы, не обязательно набирать их прописными. То есть Ctrl + A означает нажатие Ctrl и клавиши A вместе. Не нужно нажимать клавишу Shift, чтобы получить прописную букву A. Теперь давайте рассмотрим их по отдельности.
1. Ctrl + A: перемещение в начало строки
При нажатии клавиши Ctrl + A курсор перемещается в начало файла, что может быть очень полезно, когда вы пишете длинную команду и хотите внести изменения в начале строки.
Например, здесь я показал, как вы можете нажать Ctrl + A в любом месте, и она переместит вас в начало строки.
2. Ctrl + E: Перемещение в конец строки
При использовании терминала, если вы хотите перейти в конец строки, вы можете просто нажать Ctrl + E, и это выполнит свою работу.
В следующем примере я использовал пример текста и нажал Ctrl + E, чтобы перейти в конец строки:
3. Ctrl + U: Удалить от курсора до начала
Бывают случаи, когда требуется удалить все от позиции курсора до начала строки.
В этом случае достаточно с помощью клавиш со стрелками влево установить курсор от места удаления до начала строки и нажать Ctrl + U:
Вводите пароль учетной записи с помощью команды sudo
и не уверены, что набрали его правильно? Вместо того чтобы нажимать backspace до конца, просто воспользуйтесь сочетанием клавиш Ctrl + U и начните вводить пароль заново.
4. Ctrl + K: Удалить от курсора до конца
Как можно догадаться из названия, при нажатии клавиши Ctrl + K удаляется все от курсора до конца строки (все от позиции курсора до правого края).
Чтобы воспользоваться этим сочетанием клавиш, сначала нужно установить курсор в том месте, откуда нужно удалить текст, до конца, а затем нажать клавишу Ctrl + K, как показано здесь:
5. Ctrl + W: Удаление одного слова перед курсором
Это то, что я использую ежедневно, поскольку часто ошибаюсь при вводе команд и хочу удалить одну часть команды, для этого достаточно нажать клавишу Ctrl + W.
При нажатии клавиши Ctrl + W будет удалено только одно слово перед курсором:
6. Ctrl + L: Очистить экран терминала (типа того)
Это не очищает экран терминала по-настоящему, но уменьшает его, и если прокрутить экран вверх, то можно найти предыдущую команду и историю выполнения.
Да, это отличается от команды clear
, поскольку она удаляет историю, и вы найдете выполнение команды clear
в истории команд.
Но когда вы нажимаете Ctrl + L, это просто очищает текущий экран, и вы не найдете ее в истории (поскольку она не является командой).
Например, здесь я выполнил команду history, а затем нажал клавишу Ctrl + L, чтобы очистить экран:
7. Ctrl + C: Остановить текущий процесс/исполнение
Сколько раз случалось так, что вы хотели остановить выполнение команды, но не знали, как это сделать, и в итоге закрывали сам терминал
В любом случае, все, что вам нужно сделать, это нажать Ctrl + C.
Когда вы нажимаете клавиши, это посылает сигнал SIGINT
, который в конечном итоге приведет к завершению процесса.
Например, здесь я убил текущее выполнение команды point:
В конце вы увидите символ ^C
, указывающий на то, что вы нажали Ctrl + C, чтобы убить текущее выполнение.
Но есть несколько процессов, которые не могут быть убиты с помощью сигнала Ctrl + C, и в этом случае вы можете использовать другие сигналы завершения в Linux:
8. Ctrl + D: Выход из системы или выход из терминала
Для закрытия сеанса оболочки и терминала всегда можно использовать команду exit. Вы также можете использовать клавиши быстрого доступа Ctrl + D. При нажатии клавиши Ctrl + D вы выйдете из текущей сессии, если вы используете ее в SSH она закроет сессию, а при повторном нажатии закроет сам терминал:
9. Ctrl + Z: Приостановить текущий процесс
В этом случае можно нажать Ctrl + Z, чтобы остановить текущий процесс, который впоследствии можно продолжить с того места, где он был остановлен. Например, здесь я остановил процесс обновления:
10. Ctrl + R: Поиск истории команд
При нажатии Ctrl + R открывается окно режима поиска, в котором можно набрать любую часть команды, и она найдет команду, соответствующую введенной строке.
Если команда найдена, достаточно нажать клавишу Enter, и она будет выполнена.
Например, здесь я искал update
и получил команду для обновления репозитория в Ubuntu (sudo apt update):
Если вам не нравится ни одно из предложений из истории, используйте Ctrl + C для выхода из режима поиска.
11. ↑: Показать предыдущую команду из истории
При нажатии клавиши ↑ на экран будут поочередно выводиться ранее выполненные команды из истории команд:
12. ↑: Показать следующую команду из истории
При нажатии клавиши ↑ отображаются предыдущие команды, но бывают случаи, когда вы случайно нажимаете ее много раз и теперь хотите показать ранее показанную команду.
В этом случае можно воспользоваться клавишей ↓
.
На следующем рисунке я сначала несколько раз нажал клавишу со стрелкой вверх, а затем, чтобы вернуться к ранее показанным командам, нажал клавишу со стрелкой вниз:
Для этой же цели используются клавиши Page Up и Page Down.
13. !!: Повторить последнюю команду
В некоторых случаях требуется выполнить последнюю команду один или несколько раз, и в этом случае можно просто набрать !! (восклицание дважды):
!!
Например, здесь я выполнил команду echo
, а затем дважды использовал !!
, чтобы использовать ту же команду снова и снова:
Но наиболее частое и полезное применение этого сочетания клавиш – когда вы забыли использовать sudo
в команде. Вместо того чтобы писать всю команду заново, достаточно использовать sudo !!
Аналогичное сочетание клавиш – Alt. Эта комбинация выдает последний аргумент/часть последней команды. Скажем, ранее вы использовали команду ls /etc/apt/sources.list.d
и теперь хотите войти в этот каталог. Просто наберите cd
и используйте Alt. Это будет похоже на ввод cd /etc/apt/sources.list.d
14. !n: Повторить n-ую команду из истории
Вы можете получить доступ к истории выполненных команд, просто выполнив в терминале команду bash history
, и каждая из них будет иметь индексный номер, связанный с ней:
history
Теперь, предположим, я хочу выполнить вторую последнюю команду echo, тогда я буду использовать следующее:
!1998
15. Tab: Автозавершение команды
Я думаю, что мне следовало бы начать список сочетаний клавиш терминала именно с этого.
При вводе длинной команды можно набрать ее половину, а затем нажать клавишу Tab, и она будет автоматически завершена за вас.
Например, здесь я нажал клавишу Tab для автозавершения выполнения моего сценария:
16. Tab (дважды): Список всех возможных автозавершений
Если нажатие клавиши Tab не срабатывает, значит, существует несколько вариантов выполнения текущей команды.
В этом случае можно нажать клавишу Tab дважды, чтобы перечислить все возможные варианты:
Следующие несколько сочетаний клавиш зависят от эмулятора терминала. Они должны работать с большинством терминальных приложений, но это не является гарантией.
17. Ctrl + Shift + C: Копирование выделенного текста
Чтобы скопировать текст в терминале, необходимо выделить текст с помощью мыши, а затем нажать клавишу Ctrl + Shift + C для копирования выделенного текста:
18. Ctrl + Shift + V: Вставить скопированный текст
После того как вы скопировали текст, выделив его и нажав Ctrl + Shift + C, теперь вы можете вставить его в любое место, нажав Ctrl + Shift + V:
19. Ctrl + Shift + N: Открыть новое окно терминала
При нажатии Ctrl + Shift + N откроется новое окно терминала с той же рабочей директорией, в которой вы работали в предыдущем окне:
20. Ctrl + Shift + T: Открыть новую вкладку
Как и в веб-браузерах, в терминале можно открывать вкладки для разделения различных задач. Чтобы открыть новую вкладку, достаточно нажать Ctrl + Shift + T.
21. Ctrl + Tab или Ctrl + PageDown: переключение вкладок
Если вы создали несколько вкладок вышеописанным способом, то, возможно, вам захочется переключаться между ними.
Для этого можно использовать Ctrl + Tab или Ctrl + PageDown:
Это, скорее всего, особенность Ubuntu Нажмите клавиши Ctrl + Alt + T, чтобы открыть новый терминал
Если нажал Ctrl+z при редактировании white_lists
мне помгло:
после ввода ls -la – просмотрел список врменных файлов white_lists
rm white_lists.* (rm это remove эта удалила все файлы white_lists.*)
sudo nano white_lists (sudo это superuser do повышает привелегии до суперзверя если это разрешено в sudoers файле)
так же советовали:
ps ax | grep имя_файла
kill нужный_id