如果Get-Date介于日期范围之间

时间:2014-09-23 14:56:41

标签: date datetime powershell if-statement

在我们开始之前,我是一个Powershell Noob。

我之前在VBS有过一些经验,但我再一次没想象,我是开发人员。

我被要求创建一个脚本,要求我根据系统上的日期/时间运行一组备份作业(完全和差异,为了参数)。我得到的唯一要求是它必须使用Powershell编写(作为一个FYI,我在公司环境中工作,因此将从“风险缓解”的角度进行严格的审查)。

实际上,我需要创建一个If语句来检查系统日期和时间,并在系统确定日期在星期六20:00和星期日19:00之间运行“完整”备份作业。 在任何其他时间它应该运行“差异”备份作业。

我觉得我有足够的能力替换我的变量,但我真的需要一些帮助来创建一个能够检查“now”是否在指定日期/时间之间的语句。

如果有人提出任何建议,我们将不胜感激!

再次感谢,
IT-尼克

1 个答案:

答案 0 :(得分:2)

以下是一个例子。下面是两个指向PowerShell比较和逻辑运算符文档的链接。

$now = Get-Date

if (($now.DayOfWeek -eq [System.DayOfWeek]::Saturday -and $now.Hour -ge 20) -or ($now.DayOfWeek -eq [System.DayOfWeek]::Sunday -and $now.Hour -lt 19))
{
  Write-Host "Full backup"
}
else
{
  Write-Host "Diff backup"
}

about_Logical_Operators

about_Comparison_Operators