Dans bash, vous pouvez lancer une commande nommée clear
pour effacer toutes les commandes d'écran.
Et avec echo
vous, vous pouvez imprimer ce que vous voulez à l'écran.
Dans mes scripts simples, j'ai souvent besoin d'imprimer un pourcentage de ce qui se fait avec mes commandes.
Donc je pourrais faire quelque chose comme ..
echo "89%"
echo "90%"
echo "91%"
etc..
ce que je déteste, c'est que l'écran soit plein de mises à jour en pourcentage ...
89%
90%
91%
...
ce que j'aimerais, c'est apprendre s'il y a une combinaison de caractères spéciaux (par exemple "\ 033 [01; 31m") qui pourrait être répercutée avec bash ou php echo et dire à la console "supprimer le dernier caractère imprimé précédent .."
le faire en utilisant quelque chose comme: (exemple php)
echo str_repeat($neg_character, strlen($last_percentage_update_string));
echo $new_percentage_update_string;
J'obtiendrais la nouvelle chaîne imprimée à la position exacte de la précédente sans avoir l'écran plein de lignes
Sinon, je cherche une approche pour faire la même chose à d'autres égards en utilisant toujours des scripts bash et php (veuillez inclure des exemples de travail réels au moins avec une console debian9 et php7)
tput cub 3
pour déplacer le cu rsor b par 3 colonnes ack sans avoir à coder la séquence (ettput el
à e raser le l ine).\e
n'est pas portable 2. ni l'un ni l'autre\e[0E
ech
pour l'effacement. Et reculer de 3 positions a un piège, et deux optimisations possibles que les programmes plein écran ont tendance à utiliser. Mais les optimisations et l'effacement sont exagérés pour les simples trucs de terminal de ligne courante uniquement, quand on suit ce conseil pour utiliser un spécificateur de format à largeur fixe. N'oubliez pas que cela100
fait 3 chiffres, soit dit en passant. (-: