Sono curioso di sapere lo stato di avanzamento del programma in corso e ho stampare alcune informazioni circa l'iterazione corrente quali:Come cancellare l'ultima riga nella finestra dei comandi
for i = 1:N
...
...
msg = sprintf('Processed %d/%d', i, N);
display(msg)
end
io non voglio di stampa l'avanzamento su linee separate, invece, voglio che l'ultima riga sostituisca la precedente. Non voglio usare clc
che cancella tutto il contenuto.
So che '\b'
è possibile cancellare l'ultimo carattere (come backspace) e posso creare una funzione con un ciclo for che cancella gli elementi fino alla precedente nuova riga prima dell'ultimo. Ma c'è un modo migliore per farlo? In caso contrario, come posso verificare se l'ultimo carattere sulla riga di comando è una nuova riga o no?
nota: questo mangia il tuo testo precedente. probabilmente dovresti salvare la lunghezza di msg ogni ciclo, e solo 'fprintf (repmat ('\ b', 1, lengthLastMsg));' – Julius