Qual é o significado do comando “:() {: |: &}; : Com casca? [duplicado]

3

Acabei de encontrar este comando em um fórum linux on-line onde o autor advertiu que não tente este comando por curiosidade. Então minha curiosidade vem. Qual é o significado do comando “:() {: |: & }; : ”Com casca?

    
por user3872279 08.08.2014 / 11:35

1 resposta

5

Esta fork fork é descrita aqui

No bash, uma função pode ser definida

function_name() { ... }

em que ... é a implementação ou o corpo da função

:(){ ... }

define uma função chamada : .

:|:

executa a função dentro de si - isto é, recursivamente, e canaliza sua saída para outra invocação de si mesma.

 & 

executa o comando anterior em segundo plano.

Então, isso nos dá :(){:|:&} para definir essa função

 ;

separa o comando que define a função do seguinte comando na mesma linha (como cd;pwd )

 :

é uma invocação de comando final que começa a executar a função recém-definida.

Normalmente, espero que os limites por usuário em processos ou outros recursos limitem o efeito de uma bifurcação desse tipo. A Wikipédia tem uma descrição de desarmar uma bifurcação

Adendo: Depois de escrever esta resposta, notei que esta questão era uma duplicata de

Outras questões relacionadas

por 08.08.2014 / 11:51

Tags