私が書いたコードは、一部のデータをキャプチャしてCSVファイルに書き出します。私はそれを二通り書きました。 1)最初のやり方は、あたかもそれが書かれているかのように、すべての結果よりもむしろ最後の結果を与えるだけです。 2)第二の方法は、私にエクスポート-CSVが私のforeachループで動作しない
WAY 1)
foreach ($Computer in $CompObjToRM)
{
Get-ADComputer -Identity $Computer | Select Name, DistinguishedName | Export-CSV C:\T2\ServersToRemoveFromAD2.csv -NoTypeInformation
}
WAY 2)
foreach ($Computer in $CompObjToRM)
{
Get-ADComputer -Identity $Computer | Select Name, DistinguishedName
} | Export-CSV C:\T2\ServersToRemoveFromAD2.csv -NoTypeInformation
は私が間違って何をやっている "空のパイプ要素が許可されていません" というエラーを与えますか?
ウェイ1構成の柔軟性の高い程度提供していますすることができます - はい、あなたの仮定を正しい。方法2 - '| Out-File'は単独のコマンド**です。 'foreach'を' Out-File'にパイプさせようとしていますが、それは '{}'がどのように動作するかではありません。角括弧は単に 'foreach'の開始と終了を示します。どのように指示することなく、データ自体は出力されません。 – gravity
私は私がexport-csvにコマンド結果をパイプした後、Export-CSVコマンドで-NoClobberを使用する必要があると私は思っています。コードを修正して実行して、私の愚かさを確認したり拒否したりしてください。 – JRN
これをコード化すると、foreach($ CompObjToRMの$ Computer) { Get-ADComputer -Identity $ Computer |名前、DistinguishedNameを選択| Export-CSV -NoClobber C:\ T2 \ ServersToRemoveFromAD2.csv -NoTypeInformation }エラー:ファイル 'C:\ T2 \ ServersToRemoveFromAD2.csv'が既に存在します。 – JRN