每天晚上我都需要运行批处理文件将一些txt文件转换为PDF并将它们移动到当前日期为文件夹名称的文件夹中。这很容易。
更难的部分是,作为同一批处理文件的一部分,我还需要创建一个文件夹,其中包含第二天的日期作为文件夹名称,但我需要跳过周末。因此,如果我在星期五运行脚本,我需要它自动将文件夹命名为星期一而不是星期六。
到目前为止,我的脚本看起来像这样:
$tomorrow = [DateTime]::Today.AddDays(+1).ToString("dd-MM-yyyy")
$folder = "S:\DailyReports\" + "$tomorrow"
New-Item -Path $tomorrow -ItemType directory
$today = (Get-Date -Format dd-MM-yyyy)
$folder = "S:\DailyReports\" + "$Today"
New-Item -Path $folder -ItemType directory
这对周一至周四晚上的工作非常好,但是如果我在星期五晚上运行它,它只会创建一个星期六而不是星期一的文件夹。< / p>
答案 0 :(得分:1)
你可以通过简单地检查今天是星期五,如果是星期五又增加三天来做到这一点。如果它不是星期五,那么只需添加一天,因为您的代码已经存在。
if((get-date).DayOfWeek -eq 'Friday'){
$tomorrow = [DateTime]::Today.AddDays(+3).ToString("dd-MM-yyyy")
} else {
$tomorrow = [DateTime]::Today.AddDays(+1).ToString("dd-MM-yyyy")
}