fork 炸弹

一行命令搞废一个机器,吃掉一个机器所有的进程资源

:() { :|:& }; :

:(){ :|:; }; :

传说中的 fork bomb。这段字符定义了一个函数,这个函数名字是 : , 函数内容是 :|:& 即后台执行 :|: 。 定义完函数后,执行这个函数。
为了方便你理解,你可以吧其中的 : 全都替换成别的字符串,比如 abc,那么就得到
abc() { abc | abc & }; abc
所以 abc() { abc | abc & }; 先定义一个递归的后台调用自己的函数 abc, 分号后面的 abc 则真正的调用自己。
显然,这段代码会快速的,大量的产生后台任务,最终资源耗尽,导致系统失去响应。


摘自维基百科 
:() # 定义函数,函数名为":",即每当输入":"时就会自动调用{}内代码 
{ # ":"函数开始标识 
: # 用递归方式调用":"函数本身 
| # 并用管道(pipe)将其输出引至... 
: # 另一次递归调用的":"函数 
# 综上,":|:"表示的即是每次调用函数":"的时候就会生成两份拷贝 
& # 调用间脱钩,以使最初的":"函数被杀死后为其所调用的两个":"函数还能继续执行 
} # ":"函数结束标识 
; # ":"函数定义结束后将要进行的操作... 
: # 调用":"函数,"引爆"fork炸弹 

参考

https://www.jianshu.com/p/9e508888e2d9

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值