Я работаю над сценарием Powershell для наших ребят из службы поддержки, чтобы помочь им в их повседневных задачах. У меня есть некоторый опыт работы с Powershell, но он далеко не хардкорный программист.
Я считаю, что мой вопрос довольно прост c, хотя я пока не смог найти точного ответа.
function f_LOCAL_CheckADUser($strInitials)
{
try
{
$TestVariable = Get-ADUser -Identity $strInitials -Properties *
Write-Host " - approved" -ForegroundColor Green
}
catch
{
Write-Host " - does not exist" -ForegroundColor Red
}
}
$Internal_Initials = Read-Host " Enter initials"; f_LOCAL_CheckADUser $Internal_Initials
Что происходит: пользователь вводит чьи-то инициалы (SamAccountName), затем запись проверяется по нашей AD, чтобы узнать, существует ли пользователь, это работает нормально, но «одобрить» / «не существует» строка печатается в строке под тем, что было введено пользователем.
Вот как это выглядит сейчас:
Мой вопрос Тогда есть ли способ избежать разрыва строки, и чтобы «подтвердить» / «не существует» было напечатано на той же строке, где пользователь вводил данные?
Хотелось бы, чтобы это было отображается так:
Я искал повсюду и нашел вдохновение в том, как убрать строку и заменить ее на новый, но кажется, что все излишнее убийство. Поэтому я надеюсь, что простое решение может существовать.
Вдохновение: PowerShell - строка перезаписи, написанная с помощью Write-Host , передана Boluwade Kujero за публикацию ответа.