Как очистить / удалить текущую строку в терминале? - PullRequest
673 голосов
/ 13 марта 2012

Если я использую терминал и набираю строку текста для команды, есть ли горячая клавиша или какой-либо способ очистить / удалить эту строку?

Например, если моя текущая строка / команда очень длинная, например:

> git log --graph --all --blah..uh oh i want to cancel and clear this line <cursor is here now>

Есть ли горячая клавиша или команда, чтобы перейти от вышеупомянутого к:

>

Обычно я нажимаю клавишу , и если моя текущая строка является совершенно новой в истории, это очистит ее. Но если я просматриваю историю команд с помощью клавиши и начинаю редактирование или использую эти команды, только изменит подсказку на следующую новейшую команду в истории, поэтому здесь не работает, если я не нажму несколько раз.

Ответы [ 13 ]

2 голосов
/ 05 декабря 2016

Добавить в список:

В режиме Emacs нажмите Esc , а затем R , чтобы удалить всю строку.

Я не знаю почему, просто случайно нашел его. Возможно, он не используется для удаления строки, но имеет тот же эффект. Если кто-то знает, скажите, пожалуйста, спасибо:)

Работает в Bash, но не работает в Fish.

2 голосов
/ 04 января 2016

Чтобы удалить всю строку независимо от того, где находится курсор, вы можете использовать команду kill-whole-line, но она не связана по умолчанию.Он может быть связан, например, с Ctrl + Alt + K , вставив

"\e\C-k": kill-whole-line

в файл инициализации Readline (обычно~/.inputrc).

Различные замечания:

  • Чтобы избежать случайного переназначения последовательности клавиш, которая уже используется для чего-то другого, вы можете проверить все свои привязкис bind -P.Проверьте предлагаемую привязку с помощью

    bind -P | grep '\\e\\C-k'
    
  • Имя файла инициализации Readline взято из переменной оболочки INPUTRC.Если он не установлен, по умолчанию используется значение ~/.inputrc или (если оно не существует) /etc/inputrc.Обратите внимание, что если у вас есть ~/.inputrc, /etc/inputrc будет игнорироваться.
  • Чтобы перезагрузить файл инициализации Readline, вы можете использовать Ctrl + X Ctrl + R .
  • Ссылки на соответствующие разделы руководства:
2 голосов
/ 14 июня 2013

Ctrl + W очистит слово слева.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...