Penso che sia qualcosa del genere: (Fedora14 / bash)
#!/bin/bash for i in {0..10..1}; do echo -e "$i""\c" echo -e "\n\r" sleep 1 done
Ma non funziona. Scopo: in questo modo, ma senza “clear”:
#!/bin/bash for i in {0..10..1}; do echo -e "$i" sleep 1 clear done
Quindi uno script di conteggio che non cancella lintero schermo per restituire un numero +1, invece elimina solo la riga, dove si trova il conteggio, in modo che possa esserci ad es .: una bella “barra di avanzamento” ..
Risposta
for i in {0..15}; do echo -ne "$i""\r"; sleep 1; done; echo
Non è necessario ..1 per il passo 1, che è limpostazione predefinita.
echo -n
impedisce le nuove righe.
\r
ritorna allinizio della riga (senza newline – \n
) ed è migliore del precedente ” \ b “per tornare indietro di un singolo carattere, non pratico, se hai più di una cifra. Grazie a rozcietrzewiacz.
Risposta
Stai cercando qualcosa di simile?
for i in {1..10}; do printf "\r%2d" $i sleep 1 done printf "\n"