FTPサーバーから多数のCSVファイルを取得し、ネットワーク上の場所にダウンロードするスクリプトを作成しました。CSV - DataSplitsの使用
このCSVファイルの内容は、私が必要と私は、このファイルを使用して短い作業では、このリンク File Example
で提供している例を次に示します。
12文字の使用を(英数字)は、2行目の
Ords:
に続いて、後でクエリで使用される変数を定義します。 (A)GB0000000001
は私がおよそ
.TrimStart([Characters_to_remove])
を読んでいますが、最初の行をスキップするだろうかわからないですし、その後、どのように私いる
$OrderVariable = "GB0000000001"
なります次の12文字に続くすべてを削除します。
Ords:
を除く2つの情報を使用して、これを変数として定義します。GB0000000001 - プロモーションイベント
が
$TitleEvent = "GB0000000001 – Promotion Event"
CSV電子メールが、例えばに送信する必要があることをすべての顧客が含まれてなります
D|30|BBA D|300321312|DDS D|A|BBA D|A0999950|ZZG
私は、私はそれの前にすべてのものを除外するためにどのような方法を見つけることができません除いて十分に簡単だろうと思ったハッシュテーブルに書き込むことが期待されるこれらの項目。
$mytable = Import-Csv -Path $filePath -Header D,Client,Suffix
$HashTable = @{}
foreach ($r in $mytable) {
$HashTable[$r.Client] = $r.Data
}
UPDATE
私は、次の
$target = "\\Messaging"
cd $target
$Clients = Import-Csv example.txt | where {$_ -like "*D|*"}
$Clients = $Clients[1..($Clients.count - 1)]
$Clients | Export-Csv "Test.csv" -NoTypeInformation
で変数に、この要素のほとんどを得るために管理しているしかし、私はそれがカスタムヘッダーまたは最初にせずにインポートすることができません"H |"更新1
の区切り...
終わり、私はこれは私が後でクエリで定義して使用する必要があります唯一の要素がクライアントであるとして要求されるために何が起こっているかおおよそであると信じて自分自身。
次はこれが推進イベントで、アクションは、あなたがとるべき必要のあるメッセージの内容
として残っているすべてのテキストを定義します。あなたの命令の
締め切りは9月12日2016年
このイベントの期限が延長されているの午後です。
あなたの指示を私たちに通知するには、安全なメッセージを送信することができます。
これは、大規模なので、単純にコンテンツが常に
Ords:
(ライン2)に従うとD|
区切りの開始時に終了しますラインのX番号を除去することはできません都度異なる場合があります。
私は(有名な最後の言葉)と「かなり自信を持って」と私は必要なファイルを引っ張って完全に動作するスクリプトを持って、私は一緒に配置する必要があり、他のコードのほとんどは、私が働い時だけで素晴らしいではありませんよ.csvと私はそれらを持っているとき。
csvは外部データプロバイダによって生成され、最初の行が区切られ、クライアントアカウント番号が区切られた形式で他のすべての要素が区切られていない部分的なCSV形式です。 –
ファイルをパイプで区切って分割することはできますが、私はそれを正しくまたは間違って割り引いていました。区切られたオブジェクトとしてインポートされると、すべての "メッセージ"情報はヘッダ "H"を持つ最初のカラムに入ります。この例では、2番目の行を削除し、最後のx行はファイル内のクライアント数をD、D、Dとし、最後はTで終わります。ファイルヘッダはselfで、2番目の行に含まれていますデータのこれを非常にうまく説明していないのであれば、私の謝罪ですが、それが私が例にリンクした理由です。 –