Files
knowledge-base/docs/servers/bash.md
2025-10-09 00:15:42 +03:00

51 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Bash
## Поиск по истории команд в bash (`↑/↓`)
Включаем поиск по истории команд `bash` по префиксу.
=== "Терминал"
```sh
nano ~/.inputrc
```
=== ".inputrc"
```sh
"\e[A": history-search-backward
"\e[B": history-search-forward
```
После обновления `.inputrc` нужно либо начать сеанс заново, либо выполнить команду.
```sh
bind -f ~/.inputrc
```
## Поиск по истории команд (`ctrl + r`)
`ctrl + r` — начать поиск по истории команд. Дальше можно вводить любую часть команды, поиск будет инкрементально обновляться с каждым введённым символом.
- При повторном нажатии `ctrl + r` будет выведена следующая подходящая команда.
- `Esc` или `ctrl + g` — прервать поиск и вернуться в обычный режим.
- `` или `ctrl + j` — вставить найденную команду в командную строку, но не выполнять. Пригождается, если нужно предварительно отредактировать команду.
- `Enter` — выполнить найденную команду.
## Сочетания клавиш
В Bash есть множество сочетаний клавиш для быстрой навигации и редактирования команд.
Это функции [GNU Readline](https://en.wikipedia.org/wiki/GNU_Readline) (по этой же ссылке можно найти полный список сочетаний).
- `ctrl + l` — очистить экран (аналог `clear`).
- `alt + .` — вставить последний аргумент предыдущей команды.
- `ctrl + a` — в начало строки.
- `ctrl + e` — в конец строки.
- `alt + b` — назад на одно слово.
- `alt + f` — вперед на одно слово.
- `ctrl + b` и `ctrl + f` — назад/вперед на один символ (аналог `← / →`, но не нужно тянуться к стрелочкам).
- `ctrl + p` и `ctrl + n` — переход по истории команд (аналог `↑ / ↓`, но не нужно тянуться к стрелочкам).
- `alt + r` — отменить изменения в команде и вернуть к виду, в котором она хранится в истории команд.
- `alt + d` — удалить слово справа от курсора.
- `ctrl + w` — удалить слово слева от курсора.