CLS (borrar) una sola línea?

Hay alguna manera deCLS una sola linea de salida? No creo que haya ningún interruptor paraCLS, entonces tal vez una mejor pregunta sería:

Hay alguna manera de

¿Retener todos los resultados anteriores para su reutilización?
o¿Capturar la salida mostrada actualmente (como puede marcar y copiar)?

Solo trato de hacer que mis scripts sean un poco más fáciles de usar al tener retroalimentación / información en tiempo real, en lugar de múltiples líneas con pequeños cambios. Sin embargo, la única forma en que puedo pensar en hacer esto es así:

@echo off
goto Prep

:Prep
    SET count=5
    SET genericMessage=This window will close

    goto Output

:Output
    IF NOT %count% == -1 (
        cls
        IF %count% == 0 (
            echo %genericMessage% now.
        ) ELSE (
            echo %genericMessage% in %count% seconds.
        )
        SET /A count=%count% - 1
        ping localhost -n 2 >nul
        goto Output
    ) ELSE (
        exit
    )

Entonces, obtienes esto:

El problema con esto, sin embargo, es queCLS borratodos salida, cuando solo quiero actualizar una línea borrando y volviendo a generar.

¿Alguien tiene alguna idea?

Respuestas a la pregunta(3)

Su respuesta a la pregunta