cmd
не допускает множественных встроенных замен, как вы уже узнали. Самое близкое, что вы, вероятно, получите:
из cmd
:
set "mytime=%time:~0,8%" & call echo %mytime::=_%
Из пакетного файла:
set "mytime=%time:~0,8%" & call echo %%mytime::=_%%
В качестве примечания, если хотите чтобы сохранить формат, вам также следует рассмотреть возможность изменения одного ди git часа:
set "mytime=%time =%
Приведенное выше заменит пробел перед одним ди git часом (с 1 до 9 утра) на ноль, сохраняющий ваш формат hhmmss
Однако при достижении этого больше нет цели запускать его как один слой, и вы можете также добавить его построчно:
set "mytime=%time:~0,8%"
set "mytime=%mytime: =0%"
echo %mytime::=_%