2016-10-21 4 views
0

毎晩バッチファイルを実行してtxtファイルをPDFに変換し、現在の日付をフォルダ名としてフォルダに移動する必要があります。それは簡単な部分です。PowerShell - 明日の日付を名前としてフォルダを作成しますが、週末はスキップします

同じバッチファイルの一部として、次の日の日付をフォルダ名として作成する必要がありますが、週末をスキップする必要があります。だから金曜日にスクリプトを実行すると、自動的に土曜日の代わりに月曜日の日付のフォルダに名前を付ける必要があります。

私のスクリプトは、これまでに次のようになります。

$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 

これは、月曜日から木曜日の夜のために絶対にうまく動作しますが、私は金曜日の夜にこれを実行した場合、それは単に土曜日のでフォルダを作成します月曜日の代わりに日付。

答えて

1

今日は金曜日かどうかを確認し、金曜日の場合は3日を追加することでこれを行うことができます。それが金曜日でない場合は、あなたのコードがすでに行っているように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") 

} 
+0

天才!そんなにありがとう、トニー、それは治療を働いた! – Sal

関連する問題