#1 Le 27/06/2026, à 12:50
- LucMorizur

Script echo_format (ef) pour formater le texte de la commande echo
Bonjour ;
je me suis fait un script permettant de remplacer la commande suivante :
echo -e "Normal, \033[31mtexte en rouge\033[0m, et retour."qu'est quand même pas bien lisible, par la commande suivante :
echo -e "Normal, $(ef rouge)texte en rouge$(ef), et retour."ce que je trouve tout de même plus pratique.
C'est téléchargeable sur GitHub : echo_format sur GitHub
À voir si ça a du succès...!
[Edit]
J'avais oublié la démo !

Dernière modification par LucMorizur (Le 27/06/2026, à 13:03)
Ubuntu Studio sur HP Elitebook 850 G5 d'occasion... ça le fait... (Si ce n'est l'écran en 4K qui nécessite par moments de chausser les lunettes et se coller à 10 cm :-/ ...)
Hors ligne
#2 Le 20/07/2026, à 22:08
- sputnick

Re : Script echo_format (ef) pour formater le texte de la commande echo
Moi je n'ai pas ef installé de base. On peut aussi jouer avec tput:
for i in {0..7};
do
tput setaf $i;
echo "tput setaf $i";
tput sgr0;
doneDernière modification par sputnick (Le 20/07/2026, à 22:29)
Qui veut faire quelque chose trouve un moyen, qui ne veut rien faire trouve une excuse. Proverbe arabe
https://sputnick.fr
Hors ligne
#3 Le 20/07/2026, à 22:51
- Watael

Re : Script echo_format (ef) pour formater le texte de la commande echo
ah! une commande externe ! vite! le bréviaire mangique !
vade retro commande externe ! xxsss! xxsss! xxsss!![]()
quant à echo_format
avec printf et quelques variables format aux noms significatifs, c'est vite fait.
franchement, pourquoi je chargerais un truc au nombre incalculable de lignes pour faire un petit echo coloré dans mon script ?
NB: le script n'est plus sur github.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#4 Le 20/07/2026, à 23:07
- sputnick

Re : Script echo_format (ef) pour formater le texte de la commande echo
Une version amméliorée par IA (oups, sorry):
(
count=0
for bg in {0..255}; do
for fg in {0..255}; do
# Version optimisée avec les codes ANSI équivalents à tput
# \e[48;5;{bg}m pour le fond et \e[38;5;{fg}m pour le texte
printf "\e[48;5;${bg}m\e[38;5;${fg}m tput setab %-3d; tput setaf %-3d \e[0m " "$bg" "$fg"
# Aligne 3 combinaisons par ligne pour une lecture confortable
count=$((count + 1))
if [ $((count % 3)) -eq 0 ]; then
echo ""
fi
done
done
) | less -RDernière modification par sputnick (Le 20/07/2026, à 23:10)
Qui veut faire quelque chose trouve un moyen, qui ne veut rien faire trouve une excuse. Proverbe arabe
https://sputnick.fr
Hors ligne
#5 Le 20/07/2026, à 23:15
- Watael

Re : Script echo_format (ef) pour formater le texte de la commande echo
il faut 4 commandes (dont un printf) pour faire ce que ferait printf tout seul d'une traite (la lisibilité en moins, d'accord
).![]()
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#6 Le 08/08/2026, à 22:47
- LucMorizur

Re : Script echo_format (ef) pour formater le texte de la commande echo
On peut aussi jouer avec tput
Je m'attendais bien à ce genre de réponse, ç'aurait été étonnant qu'il n'y ait pas déjà quelque chose de mieux et de plus performant
.
Moi je n'ai pas ef installé de base
Il n'y a rien à installer, il y a juste à recopier le code dans un script shell et exporter la fonction.
NB: le script n'est plus sur github.
Si ; mais, évidemment, c'est plus pratique si je déclare le code public
...
ah! une commande externe ! vite! le bréviaire mangique !
vade retro commande externe ! xxsss! xxsss! xxsss!
![]()
Pour être honnête en effet, ce qui m'a amusé dans l'écriture de ce script, c'est de faire quelque chose en script Bash pur.
quant à echo_format
avec printf et quelques variables format aux noms significatifs, c'est vite fait.
franchement, pourquoi je chargerais un truc au nombre incalculable de lignes pour faire un petit echo coloré dans mon script ?
il faut 4 commandes (dont un printf) pour faire ce que ferait printf tout seul d'une traite (la lisibilité en moins, d'accord
).
Ben, voilà, je trouve quand même plus pratique de mettre "rouge" plutôt que d'avoir à retrouver "\033[31m" ; et, à la relecture du script, on sait au moins quelle couleur on est censé avoir.
Bon, après, les scripts Bash, c'est de toutes façons rarement très lisible
...
Ubuntu Studio sur HP Elitebook 850 G5 d'occasion... ça le fait... (Si ce n'est l'écran en 4K qui nécessite par moments de chausser les lunettes et se coller à 10 cm :-/ ...)
Hors ligne
#7 Le 08/08/2026, à 23:05
- sputnick

Re : Script echo_format (ef) pour formater le texte de la commande echo
Pour la lisibilité et la rapidité, tu pourrai ré-écrire ta fonction 'ef' avec 'tput'.
Qui veut faire quelque chose trouve un moyen, qui ne veut rien faire trouve une excuse. Proverbe arabe
https://sputnick.fr
Hors ligne
#8 Le 09/08/2026, à 07:51
- MicP
Re : Script echo_format (ef) pour formater le texte de la commande echo
Bonjour
avec le shell bash
les lignes de commande suivantes :
# Aligne 3 combinaisons par ligne pour une lecture confortable count=$((count + 1)) if [ $((count % 3)) -eq 0 ]; then echo "" fi
pourraient être remplacées par :
# Aligne 3 combinaisons par ligne pour une lecture confortable
(( count ++ )) # Incrémenter count
(( count % 3 )) || printf '\n' # Si le reste de la division entière de count par 3 est zéro, alors Ligne suivante=======
Quelques liens concernant les séquences d'échappement :
https://gist.github.com/fnky/458719343a … a4f7296797
Dernière modification par MicP (Le 09/08/2026, à 08:40)
Hors ligne
#9 Le 09/08/2026, à 23:30
- sputnick

Re : Script echo_format (ef) pour formater le texte de la commande echo
@MicP, comme précisé, j'ai amélioré les features de mon script avec IA/LLM. La syntaxe n'est pas idéale, c'était une démo autour des fonctionnalités de tput, très chiant à écrire à la main.
Qui veut faire quelque chose trouve un moyen, qui ne veut rien faire trouve une excuse. Proverbe arabe
https://sputnick.fr
Hors ligne
#10 Hier à 00:00
- MicP
Re : Script echo_format (ef) pour formater le texte de la commande echo
@sputnick
Quand j'ai lu le script, je me suis dit "Tiens, on pourrait faire comme ça."
Alors j'ai posté mon message en me disant que ça pourrait intéresser certains lecteurs.
C'était juste pour étaler un peu ma confiture de bash ![]()
La culture, c'est comme la confiture, moins on en a, plus on l'étale.
Cordialement.
Hors ligne