De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

Ordenação aleatória das linhas de um arquivo

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 04 de outubro de 2012

Recentemente eu precisei fazer a divisão de uma equipe de trabalho de forma aleatória, para que nas reuniões de trabalho todos tivessem a oportunidade de interagir entre si, de forma a evitar que em todas as reuniões os grupos de formassem exatamente da mesma maneira. Para isto, eu criei um script cgi, usando o comando sort e alguns outros comandos, para dar a formatação final.

O comando sort tem a opção -R, que faz exatamente isto.

A numeração das linhas é feita com o comando cat -n. A numeração é seguida de uma marca de tabulação, o que deixa o resultado final desalinhado e, por esta razão, eu substitui esta marca de tabulação por um travessão (—).

A lista de nomes fica no arquivo equipe.txt.

Caso vocês desejem ver este script em funcionamento, o endereço é http://www.dicas-l.com.br/cgi-bin/equipe.cgi

É só recarregar a página para constatar que a cada vez a ordem é diferente.

O código utilizado é:

  #! /bin/bash
  
  
  echo "Content-type:text/html";
  echo
  
  echo "<HTML><BODY><TITLE>Equipes de Reunião</TITLE>"
  echo "<DIV align=center>"
  
  echo "<H1 style=\"font-family:Calibri;\"> Equipes de Reunião</H1>"
  
  echo "<TABLE><TR><TD>"
  echo "<PRE style=\"font-family:Calibri;font-size:1.5em;\">"
  sort -R equipe.txt | cat -n | sed "s/\t/ \&mdash; /"
  echo "</P>"
  echo "</PRE>"
  echo "</TR>"
  echo "</TABLE>"
  echo "</DIV>"
  echo "</HTML></BODY>"

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Rubens Queiroz de Almeida