GNU/Linux >> Tutoriels Linux >  >> Linux

Comment imprimer une variable avec un alignement central rembourré ?

Comment puis-je imprimer $myvar rembourré de sorte qu'il soit au centre du terminal, et de chaque côté se trouvent = au bord de l'écran ?

Réponse acceptée :

J'ai trouvé deux informations ici sur le réseau stackexchange qui m'ont aidé à arriver à cette réponse de travail :

  • https://stackoverflow.com/q/263890/5419599
  • https://stackoverflow.com/q/4409399/5419599

Cependant, le code de cette réponse est le mien.

Consultez l'historique des modifications si vous souhaitez plus de verbosité ; J'ai supprimé tous les trucs et "étapes en cours de route".

Je pense que la meilleure façon est :

center() {
  termwidth="$(tput cols)"
  padding="$(printf '%0.1s' ={1..500})"
  printf '%*.*s %s %*.*sn' 0 "$(((termwidth-2-${#1})/2))" "$padding" "$1" 0 "$(((termwidth-1-${#1})/2))" "$padding"
}
center "Something I want to print"

Sortie sur un terminal de 80 colonnes :

========================== Something I want to print ===========================

Notez que le remplissage ne doit pas nécessairement être un seul caractère ; en fait le padding la variable n'est pas, elle fait 500 caractères dans le code ci-dessus. Vous pouvez utiliser une autre forme de rembourrage en changeant uniquement le padding ligne :

padding="$(printf '%0.2s' ^v{1..500})"

Résultats en :

^v^v^v^v^v^v^v^v^v^v^v^v^v Something I want to print ^v^v^v^v^v^v^v^v^v^v^v^v^v^

Une autre utilisation pratique est :

clear && center "This is my header"

Linux
  1. Comment analyser et joliment imprimer JSON avec les outils de ligne de commande Linux

  2. Comment faire une évaluation variable indirecte ?

  3. Linux - Comment combiner l'arborescence avec la taille du répertoire ?

  4. Comment définir la variable $Path sous Linux

  5. Comment imprimer pthread_t

Bash printf - Comment imprimer une variable dans Bash

Comment intégrer ONLYOFFICE 9.6 à WordPress

Comment installer Maven sur Windows

Comment sécuriser les serveurs Linux avec SE Linux

Comment définir une variable d'environnement dans Bash

Comment créer un e-commerce avec Magento