0

PowerShellは初めてです-とても深刻な初心者です。

しかし、私は誰かが次のことをするのを手伝ってくれるかどうかを見たかったのです。

サーバー上に、毎晩レポートが書き込まれるフォルダーがあります。レポートには、次の形式で名前が付けられています DiskSpaceReport_26102012.htmlC:\Powershell\WebReport\

PSスクリプトで、スクリプトの実行日から-8日の日付範囲を使用して、これらのファイルの1つをフォルダーからコピーしたいと思います。スクリプトはWindowsのスケジュールされたタスクの一部として、またはSQLエージェントジョブを介して実行されます。

したがって、現在、フォルダにはからFriday 26 Octまでの8つのファイルがありますFriday 19th Oct。プロセスを今日実行し、ファイルを今日の日付から8日前にコピーしたいと思います。したがって、という名前のファイルをコピーしますDiskSpaceReport_19102012.html

そして、このプロセスは毎週金曜日に繰り返され、8日前の最後のファイルをコピーする必要があります。コピーはネットワーク共有にあります

\\Server01\Powershell\Webreports_Archive

タイトルで述べたように、たとえばバッチファイルでrobocopyを使用する方が簡単かどうかは気になりません。PS経由でそれを好むでしょう。

4

1 に答える 1

2

以下はあなたが望むことをします:

$pastdays = -8
$pastdate = [datetime]::Now.AddDays($pastdays)
$filename = "DiskSpaceReport_" + $pastdate.Day + $pastdate.Month + $pastdate.Year+".html"
Copy-Item -Path "C:\Powershell\WebReport\$($filename)" "\\Server01\Powershell\Webreports_Archive"

ジョンよろしく

于 2012-10-26T13:13:44.323 に答える