2016-10-11 3 views
1

Я пытаюсь вывести файлы в .txt, но я хочу только увидеть заполненные атрибуты. Некоторая помощь будет принята с благодарностью.Powershell Out-File показать только при заполнении

$T | ft Name,Logonworkstations | OUT-FILE c:\temp\name.txt 
+0

Под «заполненными» атрибутами вы имеете в виду атрибуты, которые не являются пустыми или пустыми? – Castrohenge

+0

Хорошо, что я пытаюсь сделать, это извлечь атрибут из большого количества учетных записей, но я только хочу видеть учетные записи, где этот атрибут заполнен. –

ответ

2
$T | ?{[string]::IsNullOrWhiteSpace($_.Name) -ne $ture -and ` 
     [string]::IsNullOrWhiteSpace($_.Logonworkstations) -ne $true} ` 
    | ft Name,Logonworkstations | OUT-FILE c:\temp\name.txt 

Это будет проверять, если эфир Logonworkstations или Name атрибуты имеют $null или и пустую строку (""), поскольку значение. Если их эфир пуст/пуст, строка пропускается. Но если оба атрибута имеют значение, объект будет записывать в файл.

+0

Спасибо за ответ, но когда я запустил, я все равно получаю Name - (Null) в .txt. То, что я пытаюсь сделать, это вывести имя + Logonworkstations в файл .txt, но если Logonworkstations пуст, я не хочу их в файле tekst. Это то, что находится внутри $ T, если это может помочь: Get-ADUser -SearchBase "OU = учетные записи службы, OU = ...., OU = ...., dc = ...., dc = ....., dc = ...... "-Filter * -Properties * –

+0

@ChevelloLo У меня есть обновленный ответ, чтобы включить только пользователей с обоими атрибутами. – Richard

+0

Большое вам спасибо, работал как шарм! –

Смежные вопросы