GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie drucke ich eine Variable mit Padded Center Alignment?

Wie kann ich $myvar drucken aufgefüllt, so dass es sich in der Mitte des Terminals befindet, und zu beiden Seiten sind = an den Rand des Bildschirms?

Akzeptierte Antwort:

Ich habe hier im Stackexchange-Netzwerk zwei Informationen gefunden, die mir geholfen haben, zu dieser funktionierenden Antwort zu gelangen:

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

Der Code in dieser Antwort ist jedoch mein eigener.

Sehen Sie sich den Bearbeitungsverlauf an, wenn Sie mehr Ausführlichkeit wünschen; Ich habe alle Cruft und „Schritte auf dem Weg“ herausgeschnitten.

Ich denke, der beste Weg ist:

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"

Ausgabe auf einem 80 Spalten breiten Terminal:

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

Beachten Sie, dass die Auffüllung kein einzelnes Zeichen sein muss; eigentlich das padding variable nicht, sie ist im obigen Code 500 Zeichen lang. Sie könnten eine andere Form der Auffüllung verwenden, indem Sie nur padding ändern Zeile:

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

Ergebnisse in:

^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^

Eine weitere praktische Anwendung ist:

clear && center "This is my header"

Linux
  1. Wie wird eine indirekte Variablenauswertung durchgeführt?

  2. Linux – Wie kombiniere ich den Baum mit der Verzeichnisgröße?

  3. So drucken Sie pthread_t

  4. Alias ​​mit Variable in Bash

  5. Wie drucke ich eine Nummer in Assembly NASM?

Bash printf - So drucken Sie eine Variable in Bash

So integrieren Sie ONLYOFFICE 9.6 mit WordPress

So installieren Sie Maven unter Windows

So sichern Sie Linux-Server mit SE Linux

So setzen Sie die Umgebungsvariable in Bash

So erstellen Sie einen E-Commerce mit Magento