30

これらすべてを画面に出力するだけでなく、 CSV形式のテキストファイルに保存するにはどうすればよいですか?

$OUs = Get-ADObject -LDAPFilter "(objectCategory=organizationalUnit)" `
     -SearchBase "OU=GA,OU=EAST,DC=corp,DC=chm,DC=com" | Select distinguishedName
 ForEach ($OU In $OUs)
 {
     $OU.distinguishedName
     Get-ADComputer -SearchBase $OU.distinguishedName -SearchScope OneLevel `
         -Filter * | Select Name
 }

私が試してみました

$OUs = Get-ADObject -LDAPFilter "(objectCategory=organizationalUnit)" `
     -SearchBase "OU=GA,OU=EAST,DC=corp,DC=chartercom,DC=com" | Select distinguishedName
 ForEach ($OU In $OUs)
 {
     $OU.distinguishedName
     Get-ADComputer -SearchBase $OU.distinguishedName -SearchScope OneLevel `
         -Filter * | Select Name
 } | | export-CSV c:\temp\outfile.csv –noType

および他の多くの形式ですが、常にエラーが発生します。

空のパイプ要素は許可されていません。

4

4 に答える 4

66

Tee-Objectコマンドレットを使用します。

Tee-Object コマンドレットを使用すると、Windows PowerShell ウィンドウにデータを表示したり、同じデータをテキスト ファイルに保存したりできます。これらはすべて 1 つのコマンドで実行できます。

dir | Tee-Object -file dir.txt

次のように使用する必要があります。

 ForEach ($OU In $OUs)
 {
     $OU.distinguishedName
     Get-ADComputer -SearchBase $OU.distinguishedName -SearchScope OneLevel `
         -Filter * | Select Name
 } | Tee-Object -file c:\temp\outfile.txt

注:tee Unix' と同じエイリアス がありteeます。

于 2012-06-22T18:20:56.067 に答える