これに関する解決策を見つけました。参照のリンクを失いました。だから私はいくつかのコードを微調整し、私のニーズに合わせてこれを使用します。
for %%i in (c:\Test.log) do (
call :testprocess %%~ti
)
:testprocess
set temptime=%1
レジストリでキー International を検索して、iDate と sDate の値を取得します。
set KEY_DATE="HKCU\Control Panel\International"
FOR /F "usebackq skip=4 tokens=1,3" %%A IN (`REG QUERY %KEY_DATE% /v iDate 2^>nul`) DO set iDate=%%B
FOR /F "usebackq skip=4 tokens=1,3" %%A IN (`REG QUERY %KEY_DATE% /v sDate 2^>nul`) DO set sDate=%%B
sDate値を delims= として使用し、iDateをロケール日付の形式として使用しました。
FOR /F "tokens=1-3 delims=%sDate%" %%A IN ("%temptime%") DO (
IF "%iDate%"=="0" (
SET fdd=%%B
SET fmm=%%A
SET fyyyy=%%C
)
IF "%iDate%"=="1" (
SET fdd=%%A
SET fmm=%%B
SET fyyyy=%%C
)
IF "%iDate%"=="2" (
SET fdd=%%C
SET fmm=%%B
SET fyyyy=%%A
)
)
echo %fyyyy%/%fMM%/%fdd%
ff も参照できます。使い方はこちら。
これが皆さんのお役に立てば幸いです。