Я пытаюсь получить результаты Get-ChildItem, чтобы отфильтровать список этих папок из CSVPowershell: Get-ChildItem папки из CSV
У меня есть ряд homefolders, которые называются так же, как пользователям SamAccountName (как это обычно бывает)
все домашние папки хранятся на мою долю: \ DomainName \ Users
Мой CSV содержит пользователей, которые являются имена же, как домашние папки Пример:
SamAccountName
123456
123457
123458
Часть моего сценария, который я хочу работать выглядит следующим образом:
$SAM = import-csv "C:\Scripts\HomeDrive.csv"
$HomeDriveSharePath = "\\Domain\users"
$HomeDirectories = Get-ChildItem $HomeDriveSharePath | Where {$_.Name -Match $SAM.samaccountname -AND $_.PsIsContainer -eq $true}
С моей CSV это не возвращает никаких результатов (хотя папка для примера пользователей в CSV, безусловно, существует)
Если я запускаю это, он возвращает все homefolders (как это необходимо)
Get-ChildItem $HomeDriveSharePath
Если я запускаю это:
$HomeDirectories = Get-ChildItem $HomeDriveSharePath | Where {$_.Name -Match "123456" -AND $_.PsIsContainer -eq $true}
тогда я получаю соответствующую папку отображаемую (доказав строки вида работ и папка существует)
Это должно выполняться для сотен пользователей в отношении миграции, в противном случае я бы просто сидеть здесь это делается вручную :-(
Первоначальная публикация, извинения, если это не отформатировано или объяснено совершенно правильно ... тщательный поиск этого сайта, и Google не вернул точный сценарий, который у меня есть.
Я совершенно в тупик ... ваша помощь оценили,
Благодарности
попробуйте заменить $ SAM.samaccountname с $ SAM.samaccountname.trim() –
Привет Энтони. Я попробовал, как было предложено, и получил этот результат: Get-ChildItem: входной объект не может быть привязан к каким-либо параметрам для команды либо потому, что команда не принимает вход в конвейер, либо вход и его свойства не соответствуют ни одному из параметров которые берут ввод трубопровода. В строке: 1 char: 42 – MithUK1