Как очистить текущую строку командной строки Windows?

63

Как очистить текущую строку в командной строке? (Я использую Windows 7.)

Слишком часто я ввожу команду, выполняю ее, получаю много строк вывода, а затем хочу ввести другую команду. Но прежде чем вводить вторую команду, я нажимаю клавишу со стрелкой вверх, чтобы просмотреть первую команду, а затем обнаруживаю, что должен удерживать клавишу Backspace для примерно 30 символов. (Я не могу просто нажать снова, чтобы получить пустую строку. Также я не могу получить ее, нажав снова.)

JellicleCat
источник
У @myrddim это есть, но кроме этого, некоторые плохие альтернативы продолжают появляться, пока у вас не получится что-то короткое, а затем удерживайте клавишу Backspace. другой - сделать команду плохой командой или именем файла, или, скорее, «sdfd» не распознается как внутренняя или внешняя команда », поэтому переместите курсор немного левой стрелкой и просто коснитесь буквы или не нажимайте и просто нажмите на букву в конце, запутайте ввод cmd, затем нажмите ENTER, получите эту ошибку, и следующая строка будет пустой.
Barlop
@ barlop Это действительно плохой обходной путь! Это займет всего одно нажатие клавиши. Если вы не можете использовать Escключ, вы можете использовать AutoHotkey для его симуляции.
iglvzx

Ответы:

101

EscКлавиша Escape ( ) очистит строку ввода.

Кроме того, нажатие Ctrl+Cпереместит курсор на новую пустую строку. Это может быть полезно, поскольку только что просмотренные вами данные остаются видимыми при вводе новой команды.

Мирддин Эмрис
источник
3
И если вы хотите очистить весь экран, вы можете использовать clsкоманду. :)
iglvzx
8
Как примечание, в UNIX это ctrl+u.
0
2
Что было бы уместно, если бы вопрос не был специально направлен на командную строку Windows 7. :-) Кроме того, я считаю, что это зависит от оболочки, так как я вполне уверен, что некоторые оболочки имеют то же поведение, что и Windows при нажатии Ctrl+C.
Мирддин Эмрис
2
@MyrddinEmrys на Windows этоcls
CJ7
2
Примечание: CTRL+Cкоманда также завершит любой сеанс командной строки, который у вас есть, то есть python, и вернет вас обратно в среду командной строки.
SexyBeast
15

Myyrddin покрыты Escи CtrlCкоторая очистки текущего ввода команд и инициировать новую линию соответственно.

Тем не менее, есть также еще два ярлыка, связанные с очисткой текущего ввода в CMD: CtrlHomeи CtrlEnd.

CtrlHomeпозволяет очистить все символы ввода команды слева от курсора .

CtrlEndделает то же самое для всех символов справа от курсора .

И то, и другое довольно полезно и, будучи усвоенным и привыкшим, может значительно ускорить редактирование в CMD.

Хашим
источник
2
Я не знал об этих нажатиях клавиш; благодарю вас. Можете ли вы получить голоса, которые вы заслуживаете.
Мирддин Эмрис
1
Тоже самое. Привыкнув к Башу, я всегда этого хотел. ОП мой спаситель.
uranusjr
Из любопытства, каковы эквиваленты в Bash?
Хашим
1
Из bash (1): (Ctrl) + (X), (Rubout) определяется как обратная строка уничтожения ; то есть убить назад к началу строки; то же самое, что (Ctrl) + (Home) в Windows CMD. «Rubout» может быть Backspace или Delete, поэтому попробуйте (Ctrl) + (X), (Backspace) и (Ctrl) + (X), (Delete). Кроме того, (Ctrl) + (U) является unix-line-discard ; т.е. убить назад от точки вставки (курсора) до начала строки; то же самое, что и (Ctrl) + (Home). (Ctrl) + (K) определяется как kill-line ; то есть убить текст от точки вставки до конца строки; то же самое, что (Ctrl) + (End) в Windows CMD.
Скотт
1
Просто чтобы прояснить: (Ctrl) + (U) - это давняя, общая черта Unix. Он работает в старых, не Linux, не GNU, не bash системах; это работает в  vi; это работает, если вы делаете  cat > file123. Другие относятся к командной строке bash.
Скотт