Como retroceder os caracteres no buffer do cmd?

1

Se usarmos o prompt de comando para executar scripts curtos como:

C:\php> php.exe

<?php
echo 'test';
?>

, a saída seria exibida diretamente no prompt de comando:

test
^C
C:\php> 

Então, digamos que existam erros de digitação e eu gostaria de fazer um "backspace".

Por exemplo assumindo que nós digitamos errado echo as echoo :

C:\php> php.exe

<?php
echoo 'test';

Como posso conseguir o comportamento "backspace" no cmd sem ter que abortar o script completo e redigitar tudo do zero?

    
por Pacerier 10.01.2015 / 12:50

1 resposta

1

O CMD suporta a tecla backspace, e funciona como você descreve quando você está digitando um comando antes de executá-lo.

Uma vez que você tenha iniciado o comando (php.exe neste caso) então STDIN é anexado para esse programa (não CMD) e, portanto, cabe a esse programa se implementa ou permite backspacing ou não.

Para o programa, a tecla backspace é apenas outro caractere que precisa ser processado (por exemplo, ASCII # 8 ).

    
por 10.01.2015 / 13:25