Предположим, что в bash вы начинаете писать команду вроде:
$ rm -rf /foo/bar/really/long/path/here
а потом понимаешь, что ты не хочешь выполнять это в конце концов. Есть ли способ очистить ввод одним или двумя нажатиями клавиш?
То, что я делал в последнее время, это добавление echo и заключение в кавычки (Ctrl + A echo "
, Ctrl + E, "
), затем нажатие ввода. Есть ли более быстрый способ?
Ответы:
Нажмите Ctrl-, Uчтобы удалить все перед курсором. Удаленная команда будет сохранена в буфере. Нажмите Ctrl-, Yчтобы вставить удаленную команду.
(Необязательно: нажмите Endили Ctrl-, Eчтобы сначала перейти к концу ввода.)
Или нажмите Ctrl- Cчтобы прервать ввод текста.
источник
stty -a
. И это будет работать с любой программой, которая активно не изменяет элементы управления терминала.Попробуйте Ctrl+ U. Это очищает строку ввода.
источник
При поиске нашел краткую ссылку на http://www.ice2o.com/bash_quick_ref.html .
ctrl+ e(если не в конце строки) плюс ctrl+ uсделает это.
источник
Ctrl- U, Ctrl- Kделает свое дело тоже.
Ctrl- Uудаляет все от начала строки до курсора, Ctrl- Kудаляет все от курсора до конца строки. (Иногда полезно использовать только один из них.)
источник
Есть два варианта сделать это
ctrl+ c- очищает всю строку независимо от того, где находится курсор.
ctrl+ u- очищает линию от позиции курсора до начала.
источник
Хороший ярлык нажимает Esc#. Он будет предшествовать
#
символу (таким образом, делая строку комментарием) и затем нажимать ввод. Если вы затем решите, что вам все еще нужна команда, она все еще есть в вашей истории :)источник
Нажатие EscплюсBackspace в bash очистит все до положения курсора.
(В Cygwin это очистит ввод до следующего слова. Слова разделяются пробелами, подчеркиванием, ...)
источник
Учтите, что использование Ctrl- U(или Ctrl- Eи затем Ctrl- U) сохранит то, что вы очистите, в буфере, чтобы вы могли затем вставить его позже, используя Ctrl- Y.
источник
Если вы используете Bash в режиме vi (установите его с помощью
set -o vi
), нажмите, Escчтобы переключиться в обычный режим vi, и введите,dd
чтобы удалить текущую строку!источник
Это расширение ответа Knittl который сохраняет строку в истории консоли путем добавления префикса к хешу. Преодоление недостатков буфера обмена, таких как случайная перезапись или невозможность просмотра линии реза для справки.
Строка комментария и возврат нового приглашения
Используйте любую комбинацию клавиш:
Хеш-символ
#
будет добавлен к строке, превращая всю строку в комментарий. Он также вернет новое приглашение, как если бы пользователь нажал клавишу ввода. напримерПолучить закомментированную строку
Чтобы восстановить старую строку из истории консоли, используйте один из следующих ярлыков:
Повторяйте комбинацию клавиш, пока не появится нужная строка.
Быстрое удаление хеш-префиксов
Удалить хеш строки
#
префикс доступно несколько различных опций:Удалите первый символ и немедленно выполните команду:
Переместите курсор, чтобы начать и удалить первый символ, не выполняя команду:
источник
Чтобы удалить текущую строку, попробуйте:
Ctrl- X, Ctrl-U
В качестве альтернативы вы можете использовать:
Esc-D
который требует в ~ / .inputrc:
см .: http://codesnippets.joyent.com/posts/show/1690
источник
"\e\e": kill-whole-line