このような一般的な質問は申し訳ありませんが、これは数日間私を悩ませています。このコードは何をしていますか? :(){:|:&};:
友人が私にこのコード(?)を渡してくれました。それが何をしているのか、それがCかbashか他のものであっても教えてくれません。
見た目からは、Cのように見えます。私はなぜ、:
があるのか分かりませんが。
:(){:|:&};:
すべての手がかりがわかります。それはfork bombだ
このような一般的な質問は申し訳ありませんが、これは数日間私を悩ませています。このコードは何をしていますか? :(){:|:&};:
友人が私にこのコード(?)を渡してくれました。それが何をしているのか、それがCかbashか他のものであっても教えてくれません。
見た目からは、Cのように見えます。私はなぜ、:
があるのか分かりませんが。
:(){:|:&};:
すべての手がかりがわかります。それはfork bombだ
これはbashシェルスクリプトです、ないC.
。
ウィキペディアはそれを説明する:
:() # 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.
これはフォーク爆弾だと私はあなたのシステム上でそれを実行しないでしょう。プロセスの束が出現し、最終的にシステムが減速またはクラッシュする原因になります。
ナンセンス!信頼されていないソースから「ランダム」コードを試して、ネットワーク化されていないVM内で実行することを確認してください。 :) –
これは友人ではなく、より多くのコードを取ります。もし彼があなたに 'chmod-R 666 /'と言うなら、私はそれをしません。 –
私はもちろん実行しませんでした。ここで爆撃されたのは私の心だけでした。 – Dimme