Imprimindo repetidamente uma palavra ou frase na tela

Publicado por Fábio Berbert de Paula em 09/06/2020

[ Hits: 2.126 ]

Blog: https://fabio.automatizando.dev

 


Imprimindo repetidamente uma palavra ou frase na tela



Inutilidade útil, que você provavelmente irá usar pelo menos uma vez na vida, seja para tirar onda com um colega de trabalho ou para criar algum shell script...

Existem várias formas de se chegar ao resultado final que chegaremos na dica, abordarei apenas alguns, dando prioridade aos comandos que são executados em apenas uma linha.

Como fazer para imprimir a sentença "Viva o Linux" 5x no terminal?

Método 1: printf

printf 'Viva o Linux %.0s\n' {1 2 3 4 5}

ou

printf 'Viva o Linux %.0s\n' {1..5}

Resultado:

Viva o Linux
Viva o Linux
Viva o Linux
Viva o Linux
Viva o Linux


Explicando o comando:
  • printf - autoexplicativo né minha filha?
  • Viva o Linux - idem ao anterior
  • %.0s - precisamos de algum formatador "%" para recebermos os argumentos do printf. Neste caso .0s significa uma string vazia, ou seja, nada, não faz nada
  • {1..5} - para cada elemento (de 1 a 5) processe o conteúdo passado ao printf, por isso a necessidade do "%" do item anterior

Para entender melhor como funciona o "%", experimente trocar %.0s por:

printf 'Viva o Linux %d %d\n' {1..5}

e compare os resultados.

Caso queira imprimir tudo na mesma linha, basta remover o "\n" do comando:

printf 'Viva o Linux %.0s' {1..5}
Viva o Linux Viva o Linux Viva o Linux Viva o Linux Viva o Linux

Método 2: yes cabeça!

Execute:

yes 'Viva o Linux' | head -n 5
Viva o Linux
Viva o Linux
Viva o Linux
Viva o Linux
Viva o Linux


Caso queira imprimir tudo na mesma linha, use:

echo $(yes 'Viva o Linux' | head -n 5)
Viva o Linux Viva o Linux Viva o Linux Viva o Linux Viva o Linux

Agora cabe a você eleger a solução mais elegante, ou comente abaixo caso use outro método.

Outras dicas deste autor

Palestra - A história do Viva o Linux

Git pull: "commit your changes or stash them before you merge" [Resolvido]

Preparando seu GNU/Linux para o horário de verão 2011/2012

Usando a chave UNIQUE para campos em uma tabela MySQL

G-Desktop-Suite - Google Drive para Desktop Linux

Leitura recomendada

Instalando Firefox Quantum no Deepin OS

Substituir espaços em branco por underlines em nome de arquivos

MIDI, Timidity e Rosegarden no Kurumin: Solução definitiva

Shell Script - Usando vários scripts em um só

Renomeando Konsole

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts