Moin,
ich hab hier einen Einzeiler entwickelt, vielleicht kann das jemand gebrauchen. Es geht darum, mit printf einen Text auszugeben und dabei die gesamte Terminalzeile einzufärben.
bash:
1 | printf "\e[48;5;19m%*s\rDies ist ein Test\e[0m\n" $(tput cols) |
Perl:
1 | perl -e 'printf "\e[48;5;19m%*s\rDies ist ein Test\e[0m\n", `tput cols`, "";' |
Dabei wird die Terminal-Breite mit "tput cols" ermittelt und an printf als erstem Parameter übergeben. Der wird ausgewertet, weil mit "%*s" die Länge nicht explizit angegeben wird, sondern als erster Parameter angefordert wird.
So lässt sich in eigenen Skripten z. B. eine Logo-Zeile mit eingefärbtem Hintergrund ausgeben.
Grüsse, juribel
Moderiert von rklm:
An das passende Thema angehängt
Bearbeitet von rklm:
Syntaxhighlighting