2016-12-28 5 views
0

でCSVに(2つの異なるファイルで)ADユーザー有効と無効:輸出私は、これらの特性を個別に有効と無効なユーザーを取得する必要がありますPowerShellの

  • フルネーム
  • のDisplayName
  • のEmailAddress
  • 説明
  • AccountStatus

しかし、私は無効なユーザーを取得するときに適切なプロパティを入力する際に​​問題があります。以下のスクリプトを確認して修正してください。また、同じプロパティを持つ有効なユーザーを取得する必要があります。

Import-Module ActiveDirectory 
Search-ADAccount –AccountDisabled -UsersOnly | 
    Select -Property Name,SamAccountName,EmailAddress | 
    Export-Csv "C:\\DisabledADUsers.csv" -NoTypeInformation -Encoding UTF8 

答えて

0

Search-ADAccountは、ユーザーのプロパティのサブセットのみを返します。パイプGet-ADUserによる検索結果のすべてのプロパティを取得し、選択し、オブジェクト `を介して出力を制限する:

$props = 'Name', 'DisplayName', 'EmailAddress', 'Description', 'Enabled' 

Search-ADAccount –AccountDisabled -UsersOnly | 
    Get-ADUser -Properties $props | 
    Select $props | 
    Export-Csv "C:\\DisabledADUsers.csv" -NoTypeInformation -Encoding UTF8 

は全く性質が存在しないことに注意してください/「フルネーム」または「AccountStatusは」属性。カスタムプロパティが必要な場合は、自分で作成する必要があります。calculated properties

Search-ADAccount –AccountDisabled -UsersOnly | 
    Get-ADUser -Properties Name,DisplayName,EmailAddress,Description,Enabled | 
    Select-Object @{n='Full Name';e={$_.Name}}, 
     DisplayName, EmailAddress, Description, 
     @{n='AccountStatus';e={@('Disabled','Enabled')[([int]$_.Enabled)]}} | 
    ... 

ただし、有効なユーザーと無効なユーザー(別々のファイルのみ)が必要なため、個別に列挙する必要はありません。 Get-ADUserに電話し、それぞれのファイルに結果を追加してください。

Get-ADUser -Filter * -Properties Name,DisplayName,EmailAddress,Description,Enabled | 
    Select-Object @{n='Full Name';e={$_.Name}}, 
     DisplayName, EmailAddress, Description, 
     @{n='AccountStatus';e={@('Disabled','Enabled')[([int]$_.Enabled)]}} | 
    ForEach-Object { 
     $csv = '{0}ADUsers.csv' -f $_.AccountStatus 
     $_ | Export-Csv $csv -Append -NoType -Encoding UTF8 
    } 
関連する問題