2017-02-15 2 views
0

Ich muss einen FIGLET Ausgang (zum Beispiel zur Mitte des Anschlusses) verschieben. Wie kann ich das machen? Ich versuchteWie man figlet Ausgang verschiebt

(tput sc ; tput cup 23 45 ; figlet text; tput rc) 

aber es funktioniert nicht.

Es ist nicht obligatorisch, figlet zu verwenden, es ist möglich, jedes Programm zu verwenden, das den Text in "ascii art" umwandelt.

danke!

Upd1: Entschuldigung, Leute. "Zentrieren" war nur ein Beispiel. Im Allgemeinen ist es notwendig für mich, diesen Text für eine feste Zeilen und Spalten zu verschieben, wie

tput cup 10 10 

Antwort

1

Centering ist einfach:

figlet -w $(tput cols) -c hello 
  • die -c bedeuten Zentrum
  • Die -w num legt die Linienbreite für die figlet
  • fest
  • die tput cols gibt die Spalten der aktuellen Terminal

In der Regel können Sie die -w für verwenden, um die line width bis zu einem gewissen Zahl einstellen, lassen Sie 40 sagen und die Verwendung der -c und Sie werden der Text verschoben bekommen. ..

$ figlet -w 30 -c hello 
    _   _ _  
    | |__ ___| | | ___ 
    | '_ \/_ \ | |/ _ \ 
    | | | | __/ | | (_) | 
    |_| |_|\___|_|_|\___/ 

$ figlet -w 50 -c hello 
       _   _ _  
       | |__ ___| | | ___ 
       | '_ \/_ \ | |/ _ \ 
       | | | | __/ | | (_) | 
       |_| |_|\___|_|_|\___/ 

auch können Sie die Ausgabe verschieben, indem sie einige Räume zum Start Hinzufügen, zum Beispiel durch sed

figlet hello | sed 's/^/    /' 

oder Perl

figlet hello | perl -nle 'print " " x 30 . $_' 
+0

danke! Sed oder Perl Ausdruck, was ich brauche! – antonid

0
~$ echo $'\r\r\r\r\r\r'; figlet '       text' 

          _   _ 
          | |_ _____ _| |_ 
          | __/ _ \ \//__| 
          | || __/> <| |_ 
          \__\___/_/\_\\__| 

~$ 
Verwandte Themen