Пустая командная строка удара

Я ищу способ удалить в настоящее время вводимую командную строку, не тратя впустую секунды на клавишу Backspace.

Например, я прокрутил историю удара, и имейте долгую командную строку, которая выполнилась бы, когда я нажал Enter:

~$ aptitude search openssl | grep dev

Но теперь я решаю, что не хочу выполнять эту команду. Я могу получить пустую подсказку быстро, не удаляя целую строку с Клавишей Backspace? В Windows cmd можно просто нажать Escape, и его не стало. Это поведение было бы тем, что я хочу.

4
задан 02.07.2014, 14:01

2 ответа

Нажатие Ctrl+U освободит текущую строку.

Это - символ уничтожения по умолчанию на большинстве терминалов, и это стирает текущую строку (от курсора до его начала). Команда stty может использоваться, чтобы получить или установить ее значение.

[dave@hal9000 ~]$ stty -a
speed 38400 baud; rows 23; columns 75; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?;
eol2 = M-^?; swtch = M-^?; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
...
[dave@hal9000 ~]$ stty kill ^T # Set it to Ctrl-T

Будьте путем, werase обозначает стирание слова, таким образом, Ctrl+W стирает слово слева от курсора.

7
ответ дан 07.12.2019, 19:30

Нажмите Ctrl+C для отмены команды, которую Вы вводите и возвращаетесь к пустой подсказке.

Это - общий ключ в приложениях текстового режима Unix:

  • в неинтерактивных программах Ctrl+C обычно останавливает программу в целом и возвращается к приглашению оболочки;
  • в интерактивных программах, которые выполняют одну команду за один раз (такую как оболочки), Ctrl+C обычно возвращается к основной командной строке.
2
ответ дан 07.12.2019, 19:30

Теги

Похожие вопросы