这个命令在bash中做了什么:,_,(){,_,| ,_,&};,_,

Sto*_*ock 7 bash fork

,_,( ){ ,_,| ,_,&};,_,

我不确定这意味着什么......

看起来像一个bash命令,但它可能是s bash shell指令或者如果有人可以帮助理解这一点,会有所值.我跑的时候它杀了我的bash.

Mar*_*oij 14

这是一个叉炸弹 ; 它会产生(可能)无限数量的进程,直到你的系统耗尽资源(并且通常变得不可操作).

它定义了名为的函数,_,,它自己运行(递归),并将输出传递给它自己.最后,_,需要开始这件事.

格式化,并,_,替换为fun,它看起来像:

fun() {
   fun | fun &
};
fun
Run Code Online (Sandbox Code Playgroud)

每次调用fun都会产生2次以上的调用fun.的&背景开始的过程(过程增加率是指数).

这是一个众所周知的变种 :() { :|: & };:

但是,有一些方法可以防止系统崩溃; 例如,在Linux中,您可以编辑/etc/security/limit.conf和设置用户的最大进程数.其他系统具有其他(通常类似的)方法.

对于UNIX用户来说,运行一个叉炸弹并使系统崩溃似乎是一种通行证; 它告诉你:

  1. 强加流程资源限制的重要性;
  2. 从不受信任的来源(例如互联网)复制和执行您不理解的命令并不是一个好主意