Я ищу способ удалить в настоящее время вводимую командную строку, не тратя впустую секунды на клавишу Backspace.
Например, я прокрутил историю удара, и имейте долгую командную строку, которая выполнилась бы, когда я нажал Enter:
~$ aptitude search openssl | grep dev
Но теперь я решаю, что не хочу выполнять эту команду. Я могу получить пустую подсказку быстро, не удаляя целую строку с Клавишей Backspace? В Windows cmd можно просто нажать Escape, и его не стало. Это поведение было бы тем, что я хочу.
Нажатие 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 стирает слово слева от курсора.
Нажмите Ctrl+C для отмены команды, которую Вы вводите и возвращаетесь к пустой подсказке.
Это - общий ключ в приложениях текстового режима Unix: