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.
Colaboração: Marcelo Beckmann
Data de Publicação: 11 de Novembro de 2007
Uma linha para se executar em um shell (sh ou bash):
:(){ :|:& };:
:() | 
declaração de uma função de nome : | 
:|:& | 
chamada da função : com um pipe para ela mesma e em segundo plano (|:&) | 
} | 
fechamento da declaração da função | 
: | 
chamada da função : | 
Vamos escrever de uma outra forma para ficar mais fácil:
bomb(){ bomb|bomb& };bomb
ou:
bomb() {
   bomb | bomb &
}
bomb
Resultado: uma função recursiva que causa um loop de fork de processos, que pode ocasionar uso excessivo de processamento e memória causando lentidão na máquina. Assustador, uma linha de comando destruidora em alguns casos. Mas existem maneiras de prevenir este tipo de situação :)
man -a ulimit