Ubuntu 16.04: comando de saudação central no terminal

3

Eu adicionei recentemente uma mensagem de saudação (algo como 'Hello Alex!') no arquivo ~/.bashsrc . Agora toda vez que eu abro um terminal, este comando aparecerá primeiro.

Minha pergunta é: Como faço para centralizar o comando, não importa se meu terminal está maximizado ou não?

    
por hadarS 29.08.2016 / 11:40

1 resposta

5

Uma maneira bem simples seria imprimir a string em uma largura de campo que usa o valor da variável COLUMNS do terminal, por exemplo

user@pc:~$ str='Hello Alex!'
user@pc:~$ printf '%*s\n' $(( (COLUMNS+${#str})/2 )) "$str"
                                  Hello Alex!
user@pc:~$

Se você quiser algo mais sofisticado, há vários pacotes de "banner" disponíveis, como figlet

user@pc:~$ figlet -c "$str"
                  _   _      _ _            _    _           _
                 | | | | ___| | | ___      / \  | | _____  _| |
                 | |_| |/ _ \ | |/ _ \    / _ \ | |/ _ \ \/ / |
                 |  _  |  __/ | | (_) |  / ___ \| |  __/>  <|_|
                 |_| |_|\___|_|_|\___/  /_/   \_\_|\___/_/\_(_)
    
por steeldriver 29.08.2016 / 14:09