2017-05-16 5 views
0

毎日最後に変更されたレコードを削除するバッチファイルがあります。しかし、最終修正日が毎月1日以外の場合にのみ削除するような条件を作りたいと思っています。以下は、毎日バッチを実行するために使用しているコードです。アドバンス毎月1日にバッチファイル例外が発生する

答えて

1
@echo off 
pushd "E:\Sales" 
for /f "eol=: delims=" %%F in ('dir /b /a-d /o-d') do (
    for /f "tokens=2 delims=/" %%D in ("%%~tF") do (
     if "%%D" neq "01" del "%%F" 
    ) 
    exit /b 
) 

@echo off 
pushd "E:\Sales" 
for /f "eol=: delims=" %%F in ('dir /b /a-d /o-d') do (
    if() 
    del "%%F" 
    exit /b 
) 

おかげで二for /fコマンド処理この形式を持つファイル日時%%~tF文字列、:MM/DD/YYYY HH:MM、および/で区切られた第二のトークンを取得し、それは日です。

ロケールの日付形式がDD/MM/YYYY ...の場合は、tokens=21に変更してください。日付形式にDayOfWeek DOW MM/DD/YYY ...が含まれている場合は、delimsにスペースを追加し、それに応じてtokensを調整します。すなわち:"tokens=3 delims=/ "

+0

実際にはもっと簡単ではっきりしています! – elzooilogico

関連する問題