A melhor maneira de fazer isso é encadear os dois comandos que você está usando.
<command> && color 07
Dessa forma, assim que o comando for executado com êxito, ele alterará o esquema de cores de volta para preto e branco.
Caso contrário, se você quiser que qualquer programa executado seja exibido em preto-e-branco, poderá criar um arquivo em lote para reproduzir isso a cada segundo:
:loop
color 07
timeout /t 1
goto loop
de cmd / ?:
If /D was NOT specified on the command line, then when CMD.EXE starts, it looks for the following REG_SZ/REG_EXPAND_SZ registry variables, and if either or both are present, they are executed first.
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
and/or
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
Você pode adicionar o arquivo em lote que altera a cor desses valores do registro para que ele seja executado sempre que o cmd.exe for executado sem o modificador / D.
Dessa forma, seu terminal terá sua redefinição de cor uma vez a cada intervalo de tempo, por isso seria mais fácil de ler.
NOTA: Este método é muito ineficiente e pode ter alguns efeitos colaterais indesejáveis.
Fontes: