毎晩私は現在の日付から36日前のフォルダで作業する必要があります。私は以下のような毎日の構造にファイルを書き込むシステムを持っています。私はローカルディスクに35日分の価値を残す必要があるので、毎晩、私は36日目をアーカイブする必要があります。キッカーは... 1日に約200万のファイルがあるので、2009年のフォルダ全体を効率的にスキャンできず、35日以上経過したファイルだけを移動することはできません。私がする必要があるのは、バッチスクリプトが36日前のフォルダのパスを決定してから、アーカイブロジックを適用することです。私は決定するスクリプトを持っていますが、36日までの決定に問題があります。ピンチでは、これを行うバッチ方法がない場合、私はperlを使うことができます。CMD/BAT - 日付を判断するヘルプ36日前
2009\07\01
2009\07\02
2009\07\03
.
.
.
2009\08\01
2009\08\02
2009\08\03
@EDIT:ヘレンの偉大な答えは私が道の99%を持っている
--Shawnフォルダ構造は次のようです。私の唯一の問題は、vbsの月と日がフォルダ構造で処理しなければならないゼロで埋められていないことです。日または月が10未満の場合は、誰も先頭の0に埋め込む簡単な方法がありますか?ここで
は、私がこれまでやっているものです:
for /F "tokens=1-3 delims=/" %%x in ('cscript //nologo get36thday.vbs') do (
SET YYYY=%%z
SET MM=%%x
SET DD=%%y)
%以外MM%が7の代わりに、バッチオプションはかなり邪悪である07