109 votes

script pour afficher toutes les couleurs du terminal

A travers l'internet, j'ai vu beaucoup de gens avec des scripts qui impriment un tas de choses dans toutes les couleurs définies dans ~/.Xdefaults . Cependant, quand j'essaie de les utiliser, j'obtiens toujours error: Bad Substitution . Est-ce que quelqu'un a un script fonctionnel qui fait la même chose ?

Cela devrait ressembler à quelque chose comme ça : enter image description here

6voto

Euperia Points 772

Récemment, j'ai voulu trouver ce script auquel beaucoup de gens se réfèrent. C'est à partir du tldp.org Bash Prompt HOWTO - http://tldp.org/HOWTO/Bash-Prompt-HOWTO/x329.html . Le script est l'œuvre de Daniel Crisman.

Le résultat est exactement le même que sur la photo de la question. Le script lui-même :

#!/bin/bash
#
#   This file echoes a bunch of color codes to the 
#   terminal to demonstrate what's available.  Each 
#   line is the color code of one forground color,
#   out of 17 (default + 16 escapes), followed by a 
#   test use of that color on all nine background 
#   colors (default + 8 escapes).
#

T='gYw'   # The test text

echo -e "\n                 40m     41m     42m     43m\
     44m     45m     46m     47m";

for FGs in '    m' '   1m' '  30m' '1;30m' '  31m' '1;31m' '  32m' \
           '1;32m' '  33m' '1;33m' '  34m' '1;34m' '  35m' '1;35m' \
           '  36m' '1;36m' '  37m' '1;37m';
  do FG=${FGs// /}
  echo -en " $FGs \033[$FG  $T  "
  for BG in 40m 41m 42m 43m 44m 45m 46m 47m;
    do echo -en "$EINS \033[$FG\033[$BG  $T  \033[0m";
  done
  echo;
done
echo

2voto

chriz Points 151

Cette question est en fait un des premiers résultats lorsque je cherche comment afficher des codes de couleur dans un terminal. Je voulais donc rendre justice et donner ce que le PO recherchait exactement. Je me souviens que la capture d'écran est quelque peu familière. Au début, je pensais qu'elle provenait de Gogh mais c'est un peu différent. Je me suis alors rendu compte que c'est exactement le même script qui est utilisé dans Couleurs de l'iTerm2 .

Par chance, ils ont ajouté un commentaire sur son origine. de

Je poste le script pour référence, tiré de iTerm2 avec les crédits originaux :

#!/bin/bash
#
#   This file echoes a bunch of color codes to the
#   terminal to demonstrate what's available.  Each
#   line is the color code of one forground color,
#   out of 17 (default + 16 escapes), followed by a
#   test use of that color on all nine background
#   colors (default + 8 escapes).
#
#   Copied from http://tldp.org/HOWTO/Bash-Prompt-HOWTO/x329.html

T='gYw'   # The test text

echo -e "\n                 40m     41m     42m     43m\
     44m     45m     46m     47m";

for FGs in '    m' '   1m' '  30m' '1;30m' '  31m' '1;31m' '  32m' \
           '1;32m' '  33m' '1;33m' '  34m' '1;34m' '  35m' '1;35m' \
           '  36m' '1;36m' '  37m' '1;37m';
  do FG=${FGs// /}
  echo -en " $FGs \033[$FG  $T  "
  for BG in 40m 41m 42m 43m 44m 45m 46m 47m;
    do echo -en "$EINS \033[$FG\033[$BG  $T  \033[0m";
  done
  echo;
done
echo

Voici le script en action :

enter image description here

2voto

Jake Ireland Points 123

Voici ma solution. Elle imprime les 225 couleurs en bash :

for colour in {1..225}
    do echo -en "\033[38;5;${colour}m38;5;${colour} \n"
done | column -x

1voto

Kesavan Muthuvel Points 135

Voir https://askubuntu.com/a/396555/41013 Cela imprimera la sortie suivante avec des formats comme BOLD, UNDERLINE, Highlighting et couleurs.

Small script to display possible terminal colors

1voto

wjandrea Points 13147

Il s'agit d'une version modifiée du TLDP script. ici . Il montre les couleurs standard et des couleurs vives (codes 90-97 et 100-107).

#!/bin/bash
# Show available terminal colours.
# Heavily modified version of the TLDP script here:
# http://tldp.org/HOWTO/Bash-Prompt-HOWTO/x329.html

print_colors(){
  # Print column headers.
  printf "%-4s  " '' ${bgs[@]}
  echo
  # Print rows.
  for bold in ${bolds[@]}; do
    for fg in ${fgs[@]}; do
      # Print row header
      printf "%s;%s  " $bold $fg
      # Print cells.
      for bg in ${bgs[@]}; do
        # Print cell.
        printf "\e[%s;%s;%sm%s\e[0m  " $bold $fg $bg "text"
      done
      echo
    done
  done
}

# Print standard colors.
bolds=( 0 1 )
fgs=( 3{0..7} )
bgs=( 4{0..8} )
print_colors

# Print vivid colors.
bolds=( 0 ) # Bold vivid is the same as bold normal.
fgs=( 9{0..7} )
bgs=( 10{0..8} )
print_colors

Exemple de sortie :

gnome-terminal screenshot

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X