1
ドメインコンピュータに関するデータを収集するためのスクリプトを作成していますが、これをcsvファイルに出力しようとしています。しかし、私はそれが欲しい方法で出てこない。ここで複数の値を出力する際の問題
は私のコードです:
Set-ExecutionPolicy Unrestricted -force
Import-Module ActiveDirectory
$CSVPath = $ScriptFolderPath + "\" + $ScriptName + ".csv"
$Import = Get-Content "c:\T2\AD Computers Scripts\ComputersTest.csv"
foreach ($Member in $Import)
{
$ComputerName = Get-ADComputer $Member -Properties Name, CanonicalName | Select Name, CanonicalName
$ConnectionStatus = Test-Connection $Member -Quiet
IF ($ConnectionStatus -eq $TRUE)
{
$IPAddress = Test-Connection $Member -Count 1 | Select -ExpandProperty IPV4Address
}
ELSE
{
$IPAddress = "Not able to contact server"
}
$CSVPath
$Report1 = $ComputerName | ForEach -Process {$_ | Add-Member -Name IPAddress -Value $IPAddress -MemberType NoteProperty -PassThru}
$Report1 | Add-Member -Name Subnet -Value $CSVPath -MemberType NoteProperty -PassThru
$Report1
"`n`n`n"
アウトプットは次のようになります。
Name CanonicalName IPAddress Subnet
---- ------------- --------- ------
CEN-RVS abc.local/Servers/Corpora... 10.19.95.2 C:\t2\AD Computers Scripts
CEN-RVS abc.local/Servers/Corpora... 10.19.95.2 C:\t2\AD Computers Scripts
私は必要なのは、単一の行です。 Add-Member
から-PassThru
パラメータは、「変更されたオブジェクトを出力」を意味
Name CanonicalName IPAddress Subnet
---- ------------- --------- ------
CEN-RVS abc.local/Servers/Corpora... 10.19.95.2 C:\t2\AD Computers Scripts
残りのスクリプトはどこにありますか?あなたは「サブネット:c:\ t2 \ ADコンピュータスクリプト」と言ってほしいですか? – TessellatingHeckler
'Add-Member'ステートメントから' -PassThru'を削除してください –
マティアスはいつもあなたの助けに感謝します。それがそれを解決しました。 – JRN