質問: %%〜tiを設定します 問題は、最後の変更の2番目が必要であり、コマンド%~tが日付と時刻を時と分のみで返すことです。「プロパティウィンドウ」をファイルごとに手動で表示することによってのみ、秒を確認できます。バッチで秒単位の時間を取得するにはどうすればよいですか?
回答: windows vista/7以降windows server 2003以降少しの努力で、forfilesを使用して、特定のファイルの最終変更時刻を取得できます。rem "delims=" is required to avoid stripping am/pm for /f "delims=" %%i in ('"forfiles /m filename /c "cmd /c echo @ftime" "') do set modif_time=%%i echo %modif_time% 出力例7:33:54 am 表示される値はコンピューターの現地時間に基づいており、ファイルのプロパティダイアログに表示される時間と一致します。使用法のヘルプ http://technet.microsoft.com/en-us/library/cc753551.aspx windows xpforfiles.exeはそのままでは使用できませんが、手動で 必須の実行可能ファイル を取得できます。これは、windows2000リソースキットの一部である古いバージョンです。構文では大文字と小文字が区別され、わずかに異なります。出力も同様です。for /f %%i in ('"forfiles.exe -mfilename -c"cmd /c echo @ftime" "') do set modif_time=%%i echo %modif_time% 出力例153354 ここでは、時間値はutc形式で表示され、タイムゾーンや夏時間の変更の影響を受けません。この例では、ファイルは15:33:54(utc)に最後に変更されました。注windows 2003 serverのインストールメディアまたはセットアップメディアからファイルのコピーを取得することで、新しいforfiles.exeバージョンを入手できます。