我的任务是更改当前的PowerShell脚本,从我们的服务器收集IIS日志的最后一个月到每周获取日志。我一周都没有看到任何语法。
这是上个月日志的当前脚本 -
Clear
Write-Host " "
Write-Host "Copying started at: " (get-date)
$aDate=$(get-date).AddMonths(-1)
$aDateSet=@($aDate)
$firstDay = Get-Date $aDate -day 1 -hour 0 -minute 0 -second 0
$lastDay = (($firstDay).AddMonths(1).AddSeconds(-1))
Write-Host " "
get-childitem "path" | where-object {$_.lastwritetime -ge $firstDay -and $_.lastwritetime -le $lastDay } | copy-item -destination "path"
那么我该如何改变它以获取上周的日志呢?或者这个脚本可以吗?
答案 0 :(得分:2)
以下是您上周选择文件系统项目的一种方法:
获取代表上周开始的[DateTime]
:
$beginningOfLastWeek = (Get-Date).Date.AddDays(-(Get-Date).DayOfWeek-1-6)
获取代表本周开始的[DateTime]
:
$beginningOfThisWeek = (Get-Date).Date.AddDays(-(Get-Date).DayOfWeek)
在这两次内获取文件:
Get-ChildItem | Where-Object { ($_.LastWriteTime -ge $beginningOfLastWeek) -and ($_.LastWriteTime -lt $beginningOfThisWeek) } ...