問題タブ [compareobject]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
943 参照

powershell - powershell 比較オブジェクトの出力の問題

以下のスクリプトを実行し、結果をテキスト ファイルに書き込むことで、2 つの長いテキスト ファイルを比較しています。予想される標準の比較オブジェクト出力の代わりに、その一部を取得し、他のすべてをトリミングします (最大文字数の制限または書式テンプレートなどにより)。生の出力をファイルに書き込む方法、または行の文字数の制限を増やして正しい結果を得る方法はありますか? 私が比較するファイルは、どのような方法でも短縮または再フォーマットすることはできません.compare-object関数の代わりに何か他のものを使用できますか?

ありがとうございました!

脚本:

出力:

0 投票する
2 に答える
265 参照

powershell - AD コンピューターの 2 つの PowerShell スクリプトの出力を比較する

2 つの PS スクリプトがあります。1 つは SharePoint 上のコンピューターのリストから読み取り、結果を出力し、もう 1 つは Active Directory からコンピューターのリストを出力します。

私がする必要があるのは、これらのリストの両方を何らかの形で比較して確認することです: a) リスト A にリスト B にリストされていないコンピューターがある場合、および b) リスト B にリスト A にリストされていないコンピューターがある場合

これは、Compare-Object コマンドレットと配列を使用して可能であると想定していますが、私は PS にあまり詳しくなく、ここからどこへ行くべきかわかりません。

ADからコンピューターのリストを取得するには、次を使用します。

私が使用するSharepointからコンピューターのリストを取得するには:

0 投票する
1 に答える
2107 参照

powershell - Compare-Object が間違った値を返す

PowerShell スクリプトに取り組んでいますが、Compare-Objectコマンドレットが期待どおりの結果を返しません。スクリプト全体をここに記載することはしませんが、これが一般的な考え方です。

これで、一連のファイルの名前、長さ、および最終書き込み時刻を含む 2 つの並べ替えられた PSCustomObjects ができました。これが私が理解できないものです。

オブジェクトが同一である場合は、Compare-Object予想どおり何も返しません。ただし、以下の例を使用します。

$knownFileObject次のようになります。

$currentFileObject次のようになります。

私が走れば

これを返します:

2 つのオブジェクト間に違いがあることは確実に検出されますが、実際に異なるレコードではなく、常に最後の行だけが返されます。変更されたファイルが 2 つある場合は、最後の 2 行を返します。に を追加する"-property Name"Compare-Object、正しいファイル名が返されますが、サイズと書き込み時間の違いも探す必要があります。Export-Csv両方のオブジェクトをファイルに書き戻し、それらのファイルで実行Compare-ObjectすることができGet-Contentます。これはうまく機能しますが、このジョブは数百回実行されるため、2 つのファイルをディスクに書き込む必要はありません。異なるフォルダーでの 1 分あたりの回数。

編集:提案の 1 つに従って、私も試してみましCompare-Object ... -Property Name, Length, LastWriteTimeUtcた。それを行うと、両方のオブジェクトのすべてのアイテム、または 100% の不一致が返されます。

私は何を間違っていますか?

0 投票する
1 に答える
259 参照

powershell - 比較オブジェクトのオブジェクトを返すスクリプトブロック

比較オブジェクトを介して 2 つのサンバの場所を比較するスクリプトを作成しています。

スピードアップするために、スレッドを介して各場所をスクリプトブロックに渡し、そこでオブジェクトを作成したいと思います。その後、スクリプト ブロックからの出力をオブジェクトとして、Compare-Object コマンドレットで使用したいと考えています。

私がソファを持っているもの:

そのため、これをどこかに追加する必要があります。

しかし、test と test2 の結果はハッシュテーブル (だと思いますか?) であり、オブジェクトではありません。

私がどこで間違ったのか、またはどうすれば別の方法でそれを行うことができるかについて、任意の入力をいただければ幸いです