Compreendendo esta declaração de shell


8

Admito que é um dever de casa, mas estou perdido ao explicar a seguinte linha de comando:

AVISO : Esta é a chamada BOMBA DE FORQUILHA! Esta linha de comando pode e irá travar o seu PC consumindo toda a RAM e CPU (confie em mim, eu tentei ...)

:(){ :|:& };:

Como sei que devo fazê-lo sozinho, aqui está o que tenho até agora (pesquisar esses caracteres é muito desanimador).

  1. O canal permite concatenar alguns comandos juntos para que a primeira saída seja usada pela segunda como entrada.
  2. O & é executar um comando em segundo plano (basicamente usado para iniciar algo a partir de um shell que não deve ser bloqueado pelo comando)

Eu acho que: é bifurcar-se? Mas aqui estou totalmente perdido! Estou disposto a aprender, então talvez alguém tenha um bom recurso para ler sobre isso?


@kkp: não é uma situação em que seu sistema não está respondendo de maneira semelhante a uma falha? A solução para corrigi-lo é o mesmo: hard reset o sistema
— WarrenFaith

Sim você está certo.
— samarasa

FORKBOOOOOMB: D
— zookalicious

Respostas:


14
:()      # define ':' -- whenever we say ':', do this:
{        # beginning of what to do when we say ':'
    :    # load another copy of the ':' function into memory...
    |    # ...and pipe its output to...
    :    # ...another copy of ':' function, which has to be loaded into memory
         # (therefore, ':|:' simply gets two copies of ':' loaded whenever ':' is called)
    &    # disown the functions -- if the first ':' is killed,
         #     all of the functions that it has started should NOT be auto-killed
}        # end of what to do when we say ':'
;        # Having defined ':', we should now...
:        # ...call ':', initiating a chain-reaction: each ':' will start two more.

Fonte: Forkbombs na Wikipedia


obrigado ... parece muito mal! Não sabia que você pode definir um método dessa maneira. muito interessante
— WarrenFaith

você poderia me dizer como encontrou esse artigo da wikipedia? Eu tentei, mas não conseguiu ...
— WarrenFaith

Eu já sabia o que procurar;)
— Egil

2
Ok, então você é um hacker malvado :) obrigado mesmo assim! me ajudou muito
— WarrenFaith

A maioria de nós que tenha visualizado os fóruns do Ubuntu foi avisado muitas vezes sobre a execução de forkbombs ou rm sudo rf você sabe o resto etc ... Não sei se é aí que Egil tem que partir embora: P
— zookalicious
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.