cmd ファイルで FORFILES を使用して、特定の日付から「今日」までのすべてのファイルを処理したいと考えています。2013 年 7 月 10 日以降のすべてに作用するようなものを使用できますforfiles /d +07/10/2013 /c "cmd /c echo @fname"
が、代わりに「今日」の 90 日前から計算できるようにしたいのです。
FORFILESにフィードするために「今日のx日前」を指定できるcmdファイルで機能する日付計算の構文はありますか?
私は VBS を使用しないことを好みます (そして、VBS で動作するコード スニペットを見つけました)。代わりに、Powershell 用にスクリプトを書き直すこともできますが、理想的には cmd を使用したいと考えています。
明確にするために、「-90」は 90 日より古いすべてのファイルを検索します。「+90」は、今日から 90 日より新しいすべてのファイルを検索し (ファイルは将来の日付で書き込まれることはめったにないため、これは基本的に役に立ちません)、「+7/30/2013」は 7/30 より新しいすべてのファイルを検索します。 /2013. CMDファイルに渡された日数変数を取得できることが望ましい最後の期間が必要です。これは、「今日のx日前」、つまり「過去x日間」と言うでしょう。したがって、上記のようにハードコードされた日付を使用する代わりに、cmd ファイル内でその日付を計算できるようにしたいと考えています。