3

Когда я использую vagrant в Windows, я иногда обнаруживаю, что переводы строк не соблюдаются должным образом. Обычно это после выполнения vagrant ssh . Таким образом, текст в конечном итоге выглядит

This machine with the name 'default' was not found 
                                                   configured for this environment.

В bash, когда происходит такого рода ошибка терминала, я могу запустить reset и он очищает и сбрасывает настройки терминала. Как я могу сделать что-то подобное в Powershell/CMD, и при этом не нужно убивать окно и начинать новый сеанс powershell/cmd?

2 ответа2

3

Используйте CLS как в командной строке, так и в PowerShell.

Примечание. В PowerShell CLS технически является псевдонимом команды Clear-Host .

CLS Очистить экран - Windows CMD - SS64

Синтаксис: CLS

Если CLS перенаправляется в файл, консоль или выполняется через FOR /F, он напечатает символ перевода строки (ASCII 10).

Errorlevels:
Если экран успешно очищен% ERRORLEVEL% = без изменений (это ошибка) Если задан плохой переключатель = 1

 

Clear-Host - PowerShell - SS64 Clear-Host

Очистить экран.

Синтаксис: Clear-Host

Стандартные псевдонимы для Clear-Host: clear , cls

0

Хотя это и не замена команды reset Linux, этот сценарий PowerShell обновит ширину буфера окна терминала PowerShell, чтобы она соответствовала ширине окна, что может решить упомянутые проблемы выравнивания.

Я использую этот скрипт, чтобы удалить горизонтальную полосу прокрутки, которая появляется, когда я изменяю размер окна по горизонтали.

function reset {
    Set-Buffer-Width-To-Screen-Width
    Clear-Host
}

function Set-Buffer-Width-To-Screen-Width {
    $h = Get-Host
    $ui = $h.UI.RawUI
    $bufferSize = $ui.BufferSize
    $windowSize = $ui.WindowSize
    $bufferSize.Width = $windowSize.Width
    $ui.BufferSize = $bufferSize
}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .