使用PS复制上周的日志文件?

时间:2018-02-06 16:55:02

标签: powershell

我的任务是更改当前的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"

那么我该如何改变它以获取上周的日志呢?或者这个脚本可以吗?

1 个答案:

答案 0 :(得分:2)

以下是您上周选择文件系统项目的一种方法:

  1. 获取代表上周开始的[DateTime]

    $beginningOfLastWeek = (Get-Date).Date.AddDays(-(Get-Date).DayOfWeek-1-6)
    
  2. 获取代表本周开始的[DateTime]

    $beginningOfThisWeek = (Get-Date).Date.AddDays(-(Get-Date).DayOfWeek)
    
  3. 在这两次内获取文件:

    Get-ChildItem | Where-Object { ($_.LastWriteTime -ge $beginningOfLastWeek) -and ($_.LastWriteTime -lt $beginningOfThisWeek) } ...