2016-04-04 12 views
1

ファイル/フォルダが存在するかどうかを調べるコードがありますが、基本的には2つのフォルダを比較します。私はファイルサイズの違いを検索するためにオンラインで何かを見つけることができない。私のコードは以下の通りです。ファイルサイズの違いを再帰的に検索して見つける方法については助けが必要です。powershellスクリプトが再帰的に検索してファイルサイズの違いを見つける

$source = Get-ChildItem -Recurse -path "C:\Users\Cl\Desktop\Source" 
$compare = Get-ChildItem -Recurse -path "C:\Users\Cl\Desktop\WMIS" 
Compare-Object -ReferenceObject $source -DifferenceObject $compare -PassThru 
+1

変更されたファイルのみをコピーするにはrobocopy機能を再導入しますか? – majkinetor

答えて

0

使用​​ファイルサイズを比較するため、あなたが後で何かをしたい場合は、その後(のような先に更新1をコピーする)変数に保存し、それに応じてif文を作成します。 get-memberを使用して、使用できるプロパティを表示できます。私はこれがあなたにバイト単位のサイズを与えると思うので、結果を "1GB"で割ります。

$source = gci "c:\users\c1\desktop\source" -recurse | Measure-Object -property length -sum 
#$source = ($source.sum/1GB) 

$compare = gci "c:\users\c1\desktop\WMIS" -recurse | Measure-Object -property length -sum 
#$compare= ($compare.sum/1GB) 
+0

'Measure-Object'の良い例ですが、この方法はエラーが起こりやすいです。 'ソース'に1000個の1MBのファイルがあり、WMISに10個の100MBのファイルがある可能性があります。 –

+1

^あなたはループし、ファイル名/サイズのハッシュテーブルを作成して比較できますあなたが望むならばその方法。 – nkasco

関連する問題