浏览包含文件夹位置的文本文件
foreach ($line in Get-Content "C:\Backup\sample.txt") {
Get-ChildItem $line | Where {
$_.LastWriteTime -gt (Get-Date).AddDays(-1)
} | select Directoryname, Name, LastWriteTime, @{Name="Size (GB)"; Expression={[Math]::Round($_.Length/1MB, 1)}}
}
这样,我只能获取昨天修改过的文件。
我要列出的文件夹昨天有没有修改过。
如果文件夹包含昨天修改过的文件(修改日期为昨天),则列出这些文件名,文件夹名及其大小(GB)。
还有Write-Host
成功备份。
不包含修改日期为昨天的文件的文件夹也应如此。
Write-Host
备份未完成。
答案 0 :(得分:0)
如果至少一个文件夹不包含在过去24小时内修改过的文件,我将假设您认为备份不完整。
$refdate = (Get-Date).AddDays(-1)
$complete = $true
$results = foreach ($line in Get-Content "C:\Backup\sample.txt") {
$result = Get-ChildItem $line |
Where-Object { $_.LastWriteTime -gt $refdate } |
Select-Object Directoryname, Name, LastWriteTime,
@{n="Size (GB)";e={[Math]::Round($_.Length/1MB, 1)}}
if ($result) {
$result
} else {
$complete = $false
}
}
if ($complete) {
Write-Host 'Backup complete'
} else {
Write-Host 'Backup incomplete'
}