Да, есть способы, но ваш код не может работать, так как echo -e ..
будет выполняться с помощью cmd.exe, а Windows-версия echo не поддерживает -e
.
Для этого вы можете создать свою собственную echo-e
функцию или командный файл.
echo-e.bat из эквивалент echo -e в Windows?
@echo off
set "arg1=%~1"
set "arg1=%arg1:\x=0x%"
set "arg1=%arg1:\e=0x1B%"
forfiles /p "%~dp0." /m "%~nx0" /c "cmd /c echo(%arg1%"
Тогда вы можете использовать его как
cmd /c echo-e "\e[0;31m Something failed\e[0m"
Примечание:
Это работает, только когда вы запускаете это из мятного окна.
Когда ваш кодзапуск в cmd-окне, запуск сценария cygwin, запуск cmd /c echo-e ...
, он будет работать только в win10 с поддержкой vt100