私はPowerShellを初めて使用します。現在、2つの大きな(100000行とn列(n> 300、列ヘッダーも各水曜日に対応する日付)を比較するための強力なスクリプトが必要です。nの値はファイル内で毎週増加し続けます。ファイル(今週と先週)を比較し、2つのファイルの唯一の違いが最後の列であることを確認する必要があります。
私はいくつかのフォーラムやブログを通過しましたが、無知のために少ししかできませんでした。
PowerShellのcsvファイルから最後の列を削除する方法がある場合は、以下のスクリプトを使用して、前の週のファイルから最後の列を削除した後、前の週のファイルと今週のファイルを比較できる場合があります。
誰かがあなたの苦労して得た知識でここで私を助けてくれるなら、それは本当に役に立ちます
[System.Collections.ArrayList]$file1Array = Get-Content "C:\Risk Management\ref_previous.csv"|Sort-Object
[System.Collections.ArrayList]$file2Array = Get-Content "C:\Risk Management\ref_current.csv"|Sort-Object
$matchingEntries = @()
foreach ($entry in $file1Array) {
if ($file2Array.Contains($entry)) {
$matchingEntries += $entry
}
}
foreach ($entry in $matchingEntries){
$file1Array.Remove($entry)
$file2Array.Remove($entry)
}
乾杯、アニル