簡體   English   中英

Powershell - 比較文件夾內容

[英]Powershell - Compare Folder Contents

我有以下代碼比較兩個文件夾並輸出與每個文件夾不同的文件,有沒有辦法讓它輸出子文件夾中文件的完整文件/文件夾路徑?

干杯

 # Create varaibles to store folder paths - pass to Strings... 
 param([string]$argFolderA,[string]$argFolderB)

 # Set variables for folder
 $FolderA = Get-ChildItem -Recurse -path $argFolderA
 $FolderB = Get-ChildItem -Recurse -path $argFolderB

 # Compare the contents and output the files different within each folder. 
 Compare-Object -ReferenceObject $FolderA -DifferenceObject $FolderB >> C:\CmpOut.txt

使用Comapre-Object的Passthru標志,如下所示:

Compare-Object -ReferenceObject $FolderA -DifferenceObject $FolderB -Passthru | % {$_.FullName}  >> C:\CmpOut.txt

試試這個:

Compare-Object -ReferenceObject $FolderA -DifferenceObject $FolderB  | 
select @{n="InputObject";e={ 
     if ($_.inputobject -is [system.io.directoryinfo]) 
     {([system.io.DirectoryInfo]$_.InputObject).fullname}
      else 
      { ([system.io.FileInfo]$_.InputObject).fullname}}},SideIndicator 

通過ForEach {$_.InputObject.FullName}管道它。

像這樣:

Compare-Object -ReferenceObject $FolderA -DifferenceObject $FolderB | ForEach {$_.InputObject.FullName}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM