figlet: ASCII art

( desarrollo / bash )

Siempre me ha gustado el ASCII art desde lo más básico hasta video usando ASCII pasando por demoscene. Para crear ASCII art hay que tener mucho arte (que no es lo mio) aunque ya hice varias versiones del logo de esta web en ASCII (pre dominio .info):

  __________                        _______                                                                   __    
 / __    __ \ ___                  (    __ \                                                ___  __        __(  )_
 \/  |  |  \/(   |____  /\____      \  \__\//\   /\_____    __  _/\  __/\  /\____   __  _/\(   ||__| ____/\\_    _\
     |  |     |  /    \(  __  )      )  __) \ \_/ /\__  \  /  \(  / / _  \(  __  ) /  \(  / |  ||  |/  ___/  |  |
     |  |     |  ( )  | \   _/_     /  /__/\ \   /  / __ \ |      |( (_)  \\   _/_ |      | |  ||  |\____ \  |  |
     \__/     \__) (__/  \_____\   (_______/  \_/  (____  )/ _)\__/ \___/  \\_____\/ _)\__/ \__/|__|/ ____/  \__/
                                                        \/ \/       \_____/        \/               \/     

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

___ _ _  _    _ _  __  _ _  _ _ _  _  _ ___ 
 |  |-| |-   |- (  )|\ |\| / |- |  | (   |
 |  | | |_   |_  \/ |-\| |(_||_ |_ | _)  |

 _____  _   _  ___     ___ __   __  ___   _  _   ___  ___  _     ___  ___  _____ 
|_   _|| |_| || __|   | __|\ \ / / / _ \ | \| | / __|| __|| |   |_ _|/ __||_   _|
  | |  |  _  || _|    | _|  \ V / |  _  || .` || (_ || _| | |__  | | \__ \  | |  
  |_|  |_| |_||___|   |___|  \_/  |_| |_||_|\_| \___||___||____||___||___/  |_|  

 `#,        ,,                                                                  ,#`            `#,       
   ##.    ,#'                                                                  ,#' ,,            ##.    
,#'##''` ,#'      ,,,          ,,,  $,   #,   ,,    '#,:#$#.    ,,,     ,,,   ,#'   `   ,,,   ,#'##''`  
    ##$  #$'`#, .#'  `,      .#'  `, #,  ,$ .#  #;   :#   '#; .#'  `, .#'  `, :#    '#, $#  `     ##$   
    :#'  #:  '# ##,,.'       ##,,.'   #,,#' #'  '#   $#    '# ##.  ,# ##,,.'  $#    ,#!  '''.     :#'   
   ,'   ,#'   ','#:.,'       '#:.,'    ;'   "#,,$#,.,:'   ,#' '#:.,#: '#:.,' ,:'   ,#'  `:##'    ,'     
                                                                  ##"
                                                             .   ##' 
                                                              ````

Pero con figletpodemos crear banners ASCII de forma muy simple y sencilla. Primero debemos instalar el paquete en debian (apt-get install figlet) o en centos (rpm -ql figlet).

Tenemos varias opciones que podemos consultar en la ayuda (man figlet, recomiendo ver los ejemplos al final de la ayuda) pero quiero resaltar estas:

Para ver como funciona unos ejemplos:

# figlet -t the-evangelist.info
 _   _                                                 _ _     _     _        __       
| |_| |__   ___        _____   ____ _ _ __   __ _  ___| (_)___| |_  (_)_ __  / _| ___  
| __| '_ \ / _ \_____ / _ \ \ / / _` | '_ \ / _` |/ _ \ | / __| __| | | '_ \| |_ / _ \ 
| |_| | | |  __/_____|  __/\ V / (_| | | | | (_| |  __/ | \__ \ |_ _| | | | |  _| (_) |
 \__|_| |_|\___|      \___| \_/ \__,_|_| |_|\__, |\___|_|_|___/\__(_)_|_| |_|_|  \___/ 
                                            |___/                                      
# figlet -k -t the-evangelist.info
 _    _                                                          _  _       _       _          __        
| |_ | |__    ___          ___ __   __ __ _  _ __    __ _   ___ | |(_) ___ | |_    (_) _ __   / _|  ___  
| __|| '_ \  / _ \ _____  / _ \\ \ / // _` || '_ \  / _` | / _ \| || |/ __|| __|   | || '_ \ | |_  / _ \ 
| |_ | | | ||  __/|_____||  __/ \ V /| (_| || | | || (_| ||  __/| || |\__ \| |_  _ | || | | ||  _|| (_) |
 \__||_| |_| \___|        \___|  \_/  \__,_||_| |_| \__, | \___||_||_||___/ \__|(_)|_||_| |_||_|   \___/ 
                                                    |___/

# figlet -fscript -t the-evangelist.info
     _                                             _                         _       
    | |                                           | | o          o          | |      
_|_ | |     _      _        __,   _  _    __,  _  | |     , _|_      _  _   | |  __  
 |  |/ \   |/-----|/  |  |_/  |  / |/ |  /  | |/  |/  |  / \_|   |  / |/ |  |/  /  \_
 |_/|   |_/|__/   |__/ \/  \_/|_/  |  |_/\_/|/|__/|__/|_/ \/ |_/o|_/  |  |_/|__/\__/ 
                                           /|                               |\       
                                           \|                               |/    

Si queremos probar todas las fuentes que vienen por defecto podemos usar este mini script:

for n in $(figlet -I2)/*.flf; do figlet -t -f$(basename $n .flf) the-evangelist.info; done
Modificado el 6 de febrero de 2013
Creado el 6 de febrero de 2013
   

Compartiendo conocimiento desde 1995 - I.M.D. I.M.D.