2017-06-23 14 views
0

$ GroupName配列を宣言し、配列の2つのステートメントを追加しようとしています。私は別のスクリプトから追加のコードを持っていて、そのスクリプト用の配列を作成しようとしています。私はRow.Category =グループとRow.excluded = falseをテストしようとしています。次に、$ groupname配列の重複をチェックします。重複が見つからない場合は、$ groupnameに入力します。CSVで配列を宣言する

私はpowershellの初心者ですので、私は配列を作成するだけで助けが必要です。

$GroupName = @(column1 = "Domain")(column2 = "Account") 
If ($_.category0 -eq "Group") -and ($_.Excluded -match "False") 
"Account0", "Domain0" | sort Account0 -Unique 

上記の次のコードを改善して、新しいCSVに2つの列を表示するにはどうすればよいですか。

+0

既存のcsvファイル、または最初から新しいファイルですか? –

+3

[アレイとハッシュテーブル](http://windowsitpro.com/powershell/powershell-basics-arrays-hash-tables)で読むことをお勧めします –

+0

@ MathiasR.Jessen私は既存のcsvファイルを使用するつもりですおよびPowerShellコードを作成し、$ Groupnameという配列を作成し、いくつかのif文を追加してから新しいファイルにエクスポートします – Sprengdilly

答えて

1

これは新しい CSVファイルの作成、あなたが後にしているものを達成するための一つの方法である:私たちは、新しいPSObjectは$Objectと呼ばれ、あなたに必要な構造とhashtableオブジェクトを提供作成

$Object = New-Object -TypeName PSObject -Property @{ Domain=''; Account='' } 
$Object | Export-CSV $env:temp\MyCSV.csv -NoTypeInformation 

-Propertyパラメータ。

次に、PSObjectをパイプラインを介してExport-CSVコマンドレットに渡します。最後に-NoTypeInformationを追加することで、他のシステムが認識できないPowerShellの追加情報なしでクリーンなCSVファイルを作成することができます。

ただし、CSVを作成/生成するための他の方法があることに注意してください。特に、データを入力する必要がある場合は注意してください。

+0

別のメソッドについて – Sprengdilly

+0

@Sprengdillyこのメソッドの問題点は何ですか? 2つの列を持つCSVが作成されますか?あなたはexport-csvが望むものであるプロパティを持つオブジェクトを作成する必要があります – Matt