My PowerShellの冒険が続きます...最終的にファイル操作といくつかの正規表現を使用してテキストをフォーマットした後、私は最終的に2つのテキストファイルを比較する必要があります。PowerShellのtxtファイルの比較が一致しない
Compare-Object $(Get-Content C:\File1.txt) $(Get-Content C:\File2.txt) -includeequal > C:\Results.txt
問題: コンペアオブジェクトを使用し、2つの別々のテキスト上のコンテンツを取得比較結果が一致するものを示していないファイル。私は手動で両方と同じ文字列を見つけることができるので、これは間違っているという事実を知っています。各テキストファイル自体は、特定のID番号の複数のコピーが含まれていてもよいとfile2は、すべての出現を含むマスターリストである
GTD-LVOE-FS-0032
:テキストはそうのような構造のランダムなID番号ですID番号の
解決方法: 私はこれがわかっているので、いくつかの==結果を返すために、Compare-Objectと-includeequalが必要です。私が見落としているかもしれない書式設定の問題はありますか?ファイル内やファイル間に複数の同一の文字列が存在すると予想されるように、Compare-Objectは機能しませんか?
編集:私は、次を含む2つのテキストファイルをそれぞれ作成したテストとして
。
GTD-LVOE-43-0021
GTD-LVOE-43-0021
GTD-LVOE-43-0021
GTD-LVOE-43-0021
私はCompare-Objectがこれらのテキストファイルが同一であると言いますが、File2には文字列が含まれていると返します。私の問題は、比較のために作成された変数の1つの中で、同一の文字列を扱うCompare-Objectであると思われます。比較する必要がある変数内に複数の同一の文字列がある場合、オブジェクトの比較に使用する別のCMDLETまたはメソッドがありますか?
ファイルを見ずに伝えるのは難しいです。 –
投稿を編集して、テストファイルの内容を表示しました。 File1とFile2には、これら4本の同じ行があります。これらの行は、各ドキュメント内および各ファイル間で同一です。私はPowerShellが比較のために4つの==を出力することを期待していました。 – Steve