一段古老的Linux shell程序

:() { :|:& };:

这是bash shell的写法,首先定义了一个函数:(),花括号里面是函数体,这里递归执行函数本身,通过管道在后台再递归运行一次本程序,最后的冒号就是立刻执行当前这个函数。这样一直运行下去,直到系统崩溃,这就是fork炸弹.

第一个冒号:代表函数名,Linux shell脚本函数格式: fname (), 则:代表fname

大括号{}, 包含函数体,是保留字,与函数体之间必须由空格分隔

第二个:,执行函数,什么也不做,通过|:&在后台递归运行函数

最后一个: 立刻执行当前函数体,这样就会一直运行下去,直到系统崩溃,炸蛋。。。哈哈

最新文章

  1. 通过一个实例理解 offsetLeft,offsetTop; offsetWidth , offsetHeight
  2. Ajax验证用户名是否存在模板
  3. 第一个C语言编译器是怎样编写的?
  4. ArcGIS10.2最新全套下载地址
  5. POJ 1679 The Unique MST (最小生成树)
  6. java基础-注解Annotation原理和用法
  7. CSS基础知识——选择器
  8. Spring的applicationContext.xml文件
  9. select m objects from n objects randomly
  10. zoj 3777 Problem Arrangement
  11. ****ural 1141. RSA Attack(RSA加密,扩展欧几里得算法)
  12. React-Native 之 项目实战(三)
  13. Collection 和 Collections的区别。(转)
  14. [USACO5.3]校园网Network of Schools
  15. Django(十九)Ajax全套
  16. python生成器(generator)、迭代器(iterator)、可迭代对象(iterable)区别
  17. 远程访问对象java实现
  18. fiddler抓包时显示Tunnel to......443是怎么回事
  19. VC中C++数值范围的确定
  20. #Python学习#python虚拟环境——virtualenv

热门文章

  1. Bypassing iPhone Code Signatures
  2. Lucene Payload 的研究与应用
  3. 645. Set Mismatch挑出不匹配的元素和应该真正存在的元素
  4. 【转】request的cache-control和response cache-control不同点
  5. javascript nonono
  6. SpringMVC——异常处理
  7. linux 首次登陆与线上求助
  8. Python字符编码详解,str,bytes
  9. Lucene的基本概念----转载yufenfei的文章
  10. C#Async,await异步简单介绍