User Tools

Site Tools


bash:редактирование_командной_строки

Bash: Редактирование командной строки

Для поддержки операций редактирования командной строки bash использует библиотеку (коллекцию подпрограмм, которую могут использовать разные программы) с именем Readline.

Перемещение курсора

Клавиша Действие
<html>CTRL+A</html> Перемещает курсор в начало строки
<html>CTRL+E</html> Перемещает курсор в конец строки
<html>CTRL+F</html> Перемещает курсор на один символ вперед; действует так же, как клавиша со стрелкой вправо
<html>CTRL+B</html> Перемещает курсор на один символ назад; действует так же, как клавиша со стрелкой влево
<html>ALT+F</html> Перемещает курсор на одно слово вперед
<html>ALT+B</html> Перемещает курсор на одно слово назад
<html>CTRL+O</html> Очищает экран и устанавливает курсор в левый верхний угол. То же самое делает команда clear

<WRAP center round tip 90%> Клавиша Meta

На современных клавиатурах ей соответствует клавиша ALT. Однако если все еще используете терминал (до сих пор поддерживаются в Linux!), можно просто нажать и отпустить клавишу ESC, и получите эффект нажатия и удержания клавиши ALT. </WRAP>

Команды редактирования текста

Клавиша Действие
<html>CTRL+D</html> Удаляет символ в позиции курсора
<html>CTRL+T</html> Меняет местами два символа — в позиции курсора и предшествующий ему
<html>ALT+T</html> Меняет местами два слова — в позиции курсора и предшествующее ему
<html>ALT+L</html> Переводит в нижний регистр символы, начиная с символа в позиции курсора и до конца слова
<html>ALT+U</html> Переводит в верхний регистр символы, начиная с символа в позиции курсора и до конца слова

Удаление и возврат текста

В документации к Readline используется термин killing and yanking (удаление и возврат), обозначающий операцию, которую обычно называют вырезанием и вставкой (cutting and pasting). Вырезанные элементы сохраняются в кольцевом буфере, который называется kill-ring (кольцо удалений)

Клавиша Действие
<html>CTRL+K</html> Удаляет символы от позиции курсора до конца строки
<html>CTRL+U</html> Удаляет символы от позиции курсора до начала строки
<html>ALT+D</html> Удаляет символы от позиции курсора до конца текущего слова
<html>ALT+BACKSPACE</html> Удаляет символы от позиции курсора до начала текущего слова. Если курсор находится в начале слова, удаляется предшествующее слово
<html>CTRL+Y</html> Извлекает текст из кольцевого буфера удалений и вставляет его в позицию курсора
bash/редактирование_командной_строки.txt · Last modified: 2023/04/06 10:18 (external edit)