0

ない

@echo off

set hh=!tm:~0,2
set mm=!tm:~3,2
set ss=!tm:~5,2
set ms=!tm:~7,2

if !hh! gtr **5** (
    echo gtr 5
    pause
    goto success
)


pause
goto fail

:success
echo Success!
pause
exit

:fail
echo Fail!
pause
exit

また

@echo off

set hh=!tm:~0,2
set mm=!tm:~3,2
set ss=!tm:~5,2
set ms=!tm:~7,2

if !hh! gtr **05** (
    echo gtr 5
    pause
    goto success
)


pause
goto fail

:success
echo Success!
pause
exit

:fail
echo Fail!
pause
exit

必要に応じて動作します

これにより、午前 10 時に午前 5 時を超えていることが出力されるはずです。午前10時ですが、午前5時未満としか書かれていません。その上、時間を午前 5 時に設定しても、午前 5 時未満であり、午前 5 時ではないと言われます。

これは、1 桁の時間、つまり 0 ~ 9 (午前 12 時から午前 9 時) に対してのみ行われます。2 桁の時間はいつでも、つまり 10-23 (午前 10 時から午後 11 時) が機能し、正しいことを言います。

4

2 に答える 2