Я ищу метку времени каждые echo
с hh:mm:ss
в пакете. Я использовал %time:~0,-3%
, и он отлично работал, пока мне не пришлось использовать set /p
. Он пропустил начальный пробел одиночного di git часов, что сделало строку смещенной по сравнению с остальными.
Пример:
@echo off
echo %time:~0,-3% Hello world!
echo %time:~0,-3% It's a sunny day outside.
set /p "state=%time:~0,-3% How are you? "
echo %time:~0,-3% That's great!
pause >nul
Вывод:
1:59:55 Hello world!
1:59:55 It's a sunny day outside.
1:59:55 How are you?
2:00:02 That's great!
I можно было бы использовать set ctime=%time:~0,3%%time:~3,3%%time:~6,2%
и echo %ctime: =0%
после, но это привело бы к множеству избыточных строк.
Есть ли способ объединить %time:~0,-3%
и %time: =0%
? Это бы меня разобрало.
Или, может быть, заставить set /p
не пропускать пробел? Это тоже сработает.