Що таке "<Esc> Kv" в bash


13

Коли я в ударі і натисніть Esc, Shift+ K, V, Баш запускає $EDITORз ім'ям файлу аналогічно /tmp/bash-fc-186566385.

Чому це і в чому його мета?

Мені, напевно, потрібно згадати, що я бігаю з Баш set -o vi.

Відповіді:


10

Це дозволяє побудувати команду з повним редагуванням Vi. Якщо ви введете деякі команди і збережете вихід, :wqкоманди будуть запускатися.

ПОЯСНЕННЯ: це дозволяє побудувати команду в будь-якому редакторі, який ви встановили, $EDITORі коли ви збережете та вийдете з нього, вміст буде запущено. (Уточнив, що це не тільки Vi!)

ТАКОЖ, як зазначає RealSkeptic , комбінація shift+ Kне потрібна для редагування редактора. Просто esc, Vбуде.


Зверніть увагу, що мало клавіатур мають ключ v. Натискання клавіші (або кращої клавіші) для отримання Kзазвичай позначається як <kbd>Shift</kbd>+<kbd>K</kbd>та натискання клавіші, щоб отримати (малі літери) vяк<kbd>V</kbd>
Антон

Ні, окрім редагування посади ОП, вони не були правильними.
Антон

2
Чи не доступний режим редактора просто за допомогою escape-V? "Зміна-К", здається, просто вуду.
RealSkeptic

@RealSkeptic ви праві, хороша додаткова інформація
forquare

3
Також Ctrl-x + e (якщо ви не перебуваєте у режимі vi)
Iacchus

12

Вам не потрібно Shift+ k. Використання Esc+ vбуде працювати, оскільки ви дозволяєте редагувати командний рядок оболонки за допомогою вбудованого редактора vi set -o vi( використовуючи те ж саме, можна досягти Ctrl+ x+ e). Це еквівалентно виконанню вбудованої fcкоманди, яка корисна для маніпулювання списком історії та файлом історії. Він викличе те, що редактор встановлений у вашому $EDITOR(в іншому випадку редакторі за замовчуванням вашої оболонки), щоб написати довгу, складну або складну команду, а потім виконати їх після збереження та закриття редактора. Детальну інформацію про fcкоманду див. Тут : Історія вбудованих файлів .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.