Я использую терминал почти для всех задач. Допустим, я ввел такую огромную команду:
sudo a-huge-command
Какой самый простой способ удалить всю команду с помощью одного ярлыка, а не продолжать нажимать backspaceклавишу?
Я новичок в Ubuntu и хочу профессионально использовать Ubuntu.
command-line
shortcut-keys
Бэтмен
источник
источник
bash
(и несколько других оболочек) , чтобы понять ключи VI:set -o vi
. Вы могли бы сделатьesc
,dd
(или иным образом изменить / заменить , как вы могли бы сделать в VI [м]).ls
), а затем backspace - обычно это всего пара нажатий клавиш, так что это не так уж и много. ' по рукам.Ответы:
Используйте Ctrl+, Uчтобы вырезать текст из позиции курсора в начало командной строки. Позже, если вы хотите, используйте Ctrl+, Yчтобы вставить вырезанный текст.
Если вы просто хотите отменить текущую командную строку и получить новую чистую подсказку, нажмите Ctrl+ C.
Для получения дополнительной информации, пожалуйста, проверьте документацию Ubuntu для использования терминала
источник
dash
является интерпретатором по умолчанию для/bin/sh
команд.bash
это логин по умолчанию и оболочка TTY.Ctrl + C
что это плохая привычка, поскольку я часто случайно посылаю сигналы программам с их собственным запросом, убивая их и теряя свой прогресс и / или импульс.Ctrl+ Uдолжен помочь тебе.
Ниже приведены остальные доступные варианты. Схватил отсюда
UNIX понимает несколько команд управляющих клавиш, команды, которые вы вводите, удерживая нажатой управляющую клавишу (ctrl) при нажатии второй клавиши
CTRL+ S- замораживает экран и останавливает продолжение любого отображения на экране (эквивалентно клавише без прокрутки) (иногда для работы требуется время)
CTRL+ Q- разблокирует экран и позволяет продолжить отображение экрана
CTRL+ C- прерывает работающую программу
CTRL+ \- то же, что CTRL - C, но сильнее (используется, когда терминал не отвечает)
CTRL+ Z- приостанавливает работающую программу (используйте команду fg, чтобы продолжить программу, см. s $
CTRL+ H- удаляет последний набранный символ
CTRL+ W- удаляет последнее набранное слово
CTRL+ U- удаляет последнюю набранную строку
CTRL+ R- поиск текста из истории
CTRL+ D- заканчивает ввод текста для многих программ UNIX, включая почту и запись.
Примечание:
Когда мы удаляем с помощью CTRL+ Wили CTRL+ U, мы также выполняем (редактировать) операцию «вырезать» (вставить) (удалить и сохранить в буфере / буфере обмена). Чтобы вставить (извлечь) строку в буфер / буфер обмена, используйте CTRL+ Y.
источник
Я обычно использую Alt+ Backspace. Если вы используете
bash
, это позволит вам удалить недо предыдущий специальный символ (/
,;
,и т.д.). Если вы используете
zsh
, он также удалит косые черты и точки с запятой. Это намного быстрее, чем просто ударить Backspace.В
bash
, это отличается от Ctrl+ wв том смысле, что Ctrl+ wудаляет предыдущее слово, где Alt+ Backspaceудаляет, пока не будет найден предыдущий специальный символ. Вzsh
обоих сочетаниях клавиш одно и то жеисточник
set -o emacs
установлено.ALT+Backspace
так же, как иCTRL+C
. Это работает на любом Linux. :)/
,;
``, и т.д.).Вот список сочетаний клавиш, которые можно использовать с
bash
оболочкой.То, что вы хотите сделать, достигается Ctrl+ Cили Ctrl+ Uв конце строки.
источник
Ctrl+C
или (Ctrl+E
Ctrl+U
)man tcsh
или используйте егоbindkey -l
. Похоже, это очень разные.Alt+ #(т.е. Alt+ Shift+ 3) закомментирует текущую команду и продолжит следующую строку.
Например, если вы печатаете t, e, s, t, Alt+ #, вы получите:
Если вы хотите , чтобы ваша старую команду назад, вы можете нажать стрелку вверх и удалить хэш - символ ( Up, Home, Deleteили Up, Ctrl+ A, Delete).
Я думаю, что это особенность GNU Readline , поскольку она работает в Bash, Python и MySQL.
источник
Ctrl+ C- в дополнение к прерыванию запущенных команд, он также может использоваться для «прерывания» ввода в командной строке.
В отличие от Ctrl+ U, вы все равно увидите, что набрали, но курсор переместится на новую строку, и вы получите пустую подсказку командной строки.
источник
readline
Ярлык Bash Ctrl+ X+ Eдействительно очень полезен, когда вы работаете в командной строке. Если вы находитесь в процессе ввода длинной команды и решили, что хотите вместо этого открыть ее в текстовом редакторе по умолчанию, все, что вам нужно сделать, это использовать ярлык.Он использует
readline
библиотеку Bash, и этот конкретный ярлык называетсяedit-and-execute-command
. Вы можете установить редактор по умолчанию, поместивexport EDITOR="/usr/bin/vi"
в~/.bashrc
или~/.bash_aliases
.Войдите,
bind -P
чтобы увидеть свои текущиеreadline
привязки и обратиться кman readline
или страницам справки Ubuntu онлайн для получения дополнительной информации.источник
Я также использую Esc+, Backspaceчтобы удалить все предыдущие символы до специального символа. Это же Alt+ Backspace. Удобно, если вы просто удаляете несколько слов за раз.
источник
Для
vi
привязок клавишКогда используется
vi
ключевая карта, например,bash
сset -o vi
илиzsh
сbindkey -v
:Режим вставки
Это то же самое нажатие клавиши, что и в режиме default / emacs:
Ctrl+U
удаление с текущей позиции до начала строки. Таким образом, он удаляет всю строку, если курсор находится в конце.
Нормальный режим
Есть несколько способов удалить строку двумя нажатиями клавиш:
Удалить также со счетчиком
dd
по умолчанию в одну строку:dd
что является самым простым с точки зрения клавиш, которых коснулись.
Другой способ: перейти к началу строки
^
и удалить до конца строкиD
:^D
Они оба удаляют всю строку, а не только слева, как Ctrl+ Uв режиме вставки или вариант bleow.
Если вы находитесь в конце строки, поэтому вам не нужно ничего удалять справа, это также будет делать:
Удалить отсюда
d
, до начала строки^
:d^
Вы можете использовать их все из режима вставки, сначала вам нужно обычное побег, чтобы перейти в обычный режим. Например, чтобы удалить всю строку из режима вставки, используйте:
Escdd
источник