bomb()
{
bomb|bomb&
};
其中,bomb() 是函数名,花括号 {} 内是函数体。
在函数体内部,第一行 bomb|bomb& 表示将 bomb 函数再次调用两次,一个在前台执行,一个在后台执行,通过 | 管道符将两个 bomb 函数连接起来。其中 & 表示将一个命令放到后台执行。
因此,这段代码是一个递归调用自身的死循环程序,每次调用将生成两个新的 bomb 函数,从而无限递归下去,最终导致系统崩溃。
Bash 的管道符 | 用于将一个命令的输出作为另一个命令的输入,多个命令可以通过管道符连接起来形成管道。其语法格式如下:
command1 | command2 | ... |