此脚本按Name
,Length
和LastWriteTime
比较FILE对象。
cls
$Source= "C:\Source"
$Destination = "C:\Destination"
Compare-Object (ls $Source) (ls $Destination) -Property Name, Length, LastWriteTime | Sort-Object {$_.LastWriteTime} -Descending
输出:
Name Length LastWriteTime SideIndicator
---- ------ ------------- -------------
11.0.3127.0.txt 6 8/31/2013 10:01:19 PM <=
11031270.txt 0 8/31/2013 9:43:41 PM <=
11.0.3128.0.txt 13 8/31/20131:20:15PM =>
11.0.3129.0.txt 0 8/28/2013 11:34:38 AM <=
我需要创建一个脚本来检索当前的数据库版本并检查单个或多个补丁是否可用。
它的工作方式如下:
我已经照顾了#1,#2。我计划修改/添加上面的脚本以简化#3,#4和#5中的步骤。
是否可以修改上述脚本以实现我的目标,如下所示:
答案 0 :(得分:0)
我不会使用Compare-Object
。请尝试以下方法:
Get-ChildItem $Source | % {
$f = Join-Path $Destination $_.Name
if (Test-Path -LiteralPath $f) {
if ($_.LastWriteTime -ge (Get-Item $f).LastWriteTime) {
Move-Item $_.FullName 'C:\NewPatchFolder'
}
}
}