Linux Fun - Sådan oprettes ASCII-tekstbannere i Terminal


For nylig har vi forklaret, hvordan man tilfældigt viser foruddefineret ASCII-kunst på Linux-terminalen ved hjælp af et program kaldet ASCII-Art-Splash-Screen. I denne artikel viser vi, hvordan du opretter dine egne tiltalende ASCII-tekstbannere fra almindelig tekst ved hjælp af to kommandolinjeværktøjer kaldet FIGlet og TOIlet.

FIGlet er et simpelt kommandolinjeværktøj til oprettelse af ASCII-tekstbannere eller store bogstaver ud af almindelig tekst, mens TOIlet (en underkommando under figlet) er et kommandolinjeværktøj til oprettelse af farverige store tegn fra almindelig tekst.

Sådan installeres og bruges Figlet og toiletværktøjer i Linux

For at bruge FIGlet og TOIlet-værktøjerne sammen skal du først installere dem på dit Linux-system ved hjælp af standardpakkehåndteringen som vist.

$ sudo apt install figlet toilet    [On Debian/Ubuntu]
$ sudo yum install figlet toilet    [On CentOS/RHEL]
$ sudo dnf install figlet toilet    [On Fedora 22+]

Når det er installeret, er den grundlæggende måde at bruge figlet på ved at give som et argument den tekst, du vil omdanne som et banner eller stor tekst, som vist.

$ figlet TecMint.com

 _____         __  __ _       _                        
|_   _|__  ___|  \/  (_)_ __ | |_   ___ ___  _ __ ___  
  | |/ _ \/ __| |\/| | | '_ \| __| / __/ _ \| '_ ` _ \ 
  | |  __/ (__| |  | | | | | | |_ | (_| (_) | | | | | |
  |_|\___|\___|_|  |_|_|_| |_|\__(_)___\___/|_| |_| |_|

Hvis du ønsker, at output skal oprettes i midten, skal du bruge flagget -c som vist.

$ figlet -c TecMint.com

             _____         __  __ _       _                        
            |_   _|__  ___|  \/  (_)_ __ | |_   ___ ___  _ __ ___  
              | |/ _ \/ __| |\/| | | '_ \| __| / __/ _ \| '_ ` _ \ 
              | |  __/ (__| |  | | | | | | |_ | (_| (_) | | | | | |
              |_|\___|\___|_|  |_|_|_| |_|\__(_)___\___/|_| |_| |_|

Brug desuden -l til at indstille output til venstre eller -r for at udskrive det til højre.

Du kan også styre outputbredden med -w -kontakten, standardbredden er 80 kolonner.

$ figlet -w 100 I Love TecMint.com

 ___   _                     _____         __  __ _       _                        
|_ _| | |    _____   _____  |_   _|__  ___|  \/  (_)_ __ | |_   ___ ___  _ __ ___  
 | |  | |   / _ \ \ / / _ \   | |/ _ \/ __| |\/| | | '_ \| __| / __/ _ \| '_ ` _ \ 
 | |  | |__| (_) \ V /  __/   | |  __/ (__| |  | | | | | | |_ | (_| (_) | | | | | |
|___| |_____\___/ \_/ \___|   |_|\___|\___|_|  |_|_|_| |_|\__(_)___\___/|_| |_| |_|

Hvis du har en bredere terminal, kan du bruge terminalens fulde bredde med kontakten -t .

$ figlet -t TecMint.com

For en mere klar output kan du bruge -k -flagget til at tilføje lidt mellemrum mellem de udskrevne tegn: tjek forskellen mellem ovenstående og nedenstående output som vist.

$ figlet -t -k I Love TecMint.com

 ___   _                        _____            __  __  _         _                            
|_ _| | |     ___ __   __ ___  |_   _|___   ___ |  \/  |(_) _ __  | |_     ___  ___   _ __ ___  
 | |  | |    / _ \\ \ / // _ \   | | / _ \ / __|| |\/| || || '_ \ | __|   / __|/ _ \ | '_ ` _ \ 
 | |  | |___| (_) |\ V /|  __/   | ||  __/| (__ | |  | || || | | || |_  _| (__| (_) || | | | | |
|___| |_____|\___/  \_/  \___|   |_| \___| \___||_|  |_||_||_| |_| \__|(_)\___|\___/ |_| |_| |_|

I stedet for at skrive din tekst på kommandolinjen, kan du læse tekst fra en fil ved hjælp af indstillingen -p som vist.

$ echo "I wish I could chmod 644 my Girlfriend" >girlfriend.txt
$ figlet -kp < girlfriend.txt

 ___             _       _       ___                      _      _ 
|_ _| __      __(_) ___ | |__   |_ _|   ___  ___   _   _ | |  __| |
 | |  \ \ /\ / /| |/ __|| '_ \   | |   / __|/ _ \ | | | || | / _` |
 | |   \ V  V / | |\__ \| | | |  | |  | (__| (_) || |_| || || (_| |
|___|   \_/\_/  |_||___/|_| |_| |___|  \___|\___/  \__,_||_| \__,_|
                                                                   
       _                            _    __    _  _    _  _   
  ___ | |__   _ __ ___    ___    __| |  / /_  | || |  | || |  
 / __|| '_ \ | '_ ` _ \  / _ \  / _` | | '_ \ | || |_ | || |_ 
| (__ | | | || | | | | || (_) || (_| | | (_) ||__   _||__   _|
 \___||_| |_||_| |_| |_| \___/  \__,_|  \___/    |_|     |_|  
                                                              
                     ____  _        _   __        _                   _  
 _ __ ___   _   _   / ___|(_) _ __ | | / _| _ __ (_)  ___  _ __    __| | 
| '_ ` _ \ | | | | | |  _ | || '__|| || |_ | '__|| | / _ \| '_ \  / _` | 
| | | | | || |_| | | |_| || || |   | ||  _|| |   | ||  __/| | | || (_| | 
|_| |_| |_| \__, |  \____||_||_|   |_||_|  |_|   |_| \___||_| |_| \__,_|

Du kan angive en anden skrifttype ved hjælp af -f flag, font er en .flf eller .tlf fil gemt i/usr/share/figlet . Du kan tjekke tilgængelige skrifttyper som sådan.

$ ls /usr/share/figlet/

646-ca2.flc  646-es.flc   646-kr.flc   646-yu.flc  8859-9.flc	   
646-ca.flc   646-fr.flc   646-no2.flc  8859-2.flc  ascii12.tlf	   
646-cn.flc   646-gb.flc   646-no.flc   8859-3.flc  ascii9.tlf	  
646-cu.flc   646-hu.flc   646-pt2.flc  8859-4.flc  banner.flf	   
646-de.flc   646-irv.flc  646-pt.flc   8859-5.flc  bigascii12.tlf  
646-dk.flc   646-it.flc   646-se2.flc  8859-7.flc  bigascii9.tlf  
646-es2.flc  646-jp.flc   646-se.flc   8859-8.flc  big.flf	   

Brug derefter en bestemt skrifttype, for eksempel bruger jeg font slant.tlf som vist.

$ figlet -f slant "Sudo I Love You"

   _____           __         ____   __                       __  __           
  / ___/__  ______/ /___     /  _/  / /   ____ _   _____      \ \/ /___  __  __
  \__ \/ / / / __  / __ \    / /   / /   / __ \ | / / _ \      \  / __ \/ / / /
 ___/ / /_/ / /_/ / /_/ /  _/ /   / /___/ /_/ / |/ /  __/      / / /_/ / /_/ / 
/____/\__,_/\__,_/\____/  /___/  /_____/\____/|___/\___/      /_/\____/\__,_/

Brug TOIlet til at oprette farvede ASCII-tekstbannere

Toiletkommandoen bruges også til at omdanne tekst til store ASCII-tegn. Den enkleste måde at køre den på er som følger.

$ toilet TecMint.com

mmmmmmm               m    m   "             m                               
   #     mmm    mmm   ##  ## mmm    m mm   mm#mm          mmm    mmm   mmmmm 
   #    #"  #  #"  "  # ## #   #    #"  #    #           #"  "  #" "#  # # # 
   #    #""""  #      # "" #   #    #   #    #           #      #   #  # # # 
   #    "#mm"  "#mm"  #    # mm#mm  #   #    "mm    #    "#mm"  "#m#"  # # #  

For at skifte til en bestemt skrifttype skal du bruge indstillingen -f , den læser også skrifttyper fra samme kilde som figlet.

$ toilet -kf script TecMint.com

 ______       ,__ __                                       
(_) |        /|  |  |  o                                   
    | _   __  |  |  |      _  _  _|_   __   __   _  _  _   
  _ ||/  /    |  |  |  |  / |/ |  |   /    /  \_/ |/ |/ |  
 (_/ |__/\___/|  |  |_/|_/  |  |_/|_/o\___/\__/   |  |  |_/

En række af indstillingerne for figlet, som vi har set på ovenfor, gælder også for toilet. For mere information henvises til deres mandsider.

$ man figlet
$ man toilet

I denne artikel kiggede vi på to kommandolinjeværktøjer til omdannelse af tekst til store ASCII-teksttegn, der er nyttige til oprettelse af bannere eller meddelelser. Del dine tanker om disse kommandoer via feedbackformularen nedenfor.