Как изменить положение курсора в консоли PowerShell

Вопрос: В настоящее время я назначаю текущую CursorPosition переменной в Powershell, чтобы я мог перезаписать одно и то же пространство при выполнении обратного отсчета, например, в скрипте, как показано ниже: $errorPos = $host.UI.RawUI.CursorPosition for ($i=5; $i -ge 0; $i--) { $host.UI.RawUI.CursorPosition = $errorPos Write-Host -NoNewline -BackgroundColor Yellow -ForegroundColor Black "$i" Start-Sleep -Seconds 1 } Что

Вопрос:

В настоящее время я назначаю текущую CursorPosition переменной в Powershell, чтобы я мог перезаписать одно и то же пространство при выполнении обратного отсчета, например, в скрипте, как показано ниже:

$errorPos = $host.UI.RawUI.CursorPosition for ($i=5; $i -ge 0; $i—) { $host.UI.RawUI.CursorPosition = $errorPos Write-Host -NoNewline -BackgroundColor Yellow -ForegroundColor Black «$i» Start-Sleep -Seconds 1 }

Что бы я хотел сделать, он занимает текущую позицию курсора и перемещает его вперед на два пробела, а затем назначает его другой переменной. Я мог бы просто использовать:

write-host » »

но я не хочу перезаписывать текст, который в настоящее время занимает это пространство.

Я думаю, что это может быть достигнуто с помощью X и Y, но у меня нет большого успеха.

Спасибо за любую помощь..!

Лучший ответ:

Если вы просто хотите переместить “X” вперед на 2, вы можете просто сделать это после создания переменной errorPos:

$errorPos.X += 2

Вы можете изменить переменную непосредственно с помощью $errorPos.X и .Y.

Оцените статью
Добавить комментарий