Я думаю, вы немного усложнили.
Если вы просто делаете
$profileInfo = Get-WmiObject Win32_UserProfile -ComputerName 'MADS000001' |
Where-Object {$_.localpath -like "*\Administrator"} |
Select-Object LocalPath, Sid, PSComputerName
Вы получите объект (если, конечно, $null
в противном случае) с тремя свойствами в команде Select-Object
.
$profileInfo.LocalPath
, который можно использовать для удаления папки.
Строковое значение $profileInfo.Sid
, которое вы можете использовать для удаления ключа реестра для этого пользователя в
HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\<SID>
P.s. Второе «нежелательное» пространство, которое вы обрисовали в общих чертах, это просто новая строка, которую Write-Host всегда добавляет, если вы не используете Write-Host $profileInfo.Sid -NoNewline