Bash Shell这个脚本什么意思?
答案:6 悬赏:30 手机版
解决时间 2021-03-06 13:59
- 提问者网友:嘚啵嘚啵
- 2021-03-05 21:28
:(){:|:&};:
最佳答案
- 五星知识达人网友:往事埋风中
- 2021-03-05 22:46
分解后如下:
:() 声明函数名为:,无参数
{ 函数定义开始
:|:& 递归调用函数自身,并通过管道建立1新进程,在后台调用本函数
}; 函数定义结束
: 调用此函数
这是著名的fork炸弹,他会无限创建进程直到系统崩溃
:目前的bash中已经不能用了,所以一般是".",冒号是比较古老的方式
:() 声明函数名为:,无参数
{ 函数定义开始
:|:& 递归调用函数自身,并通过管道建立1新进程,在后台调用本函数
}; 函数定义结束
: 调用此函数
这是著名的fork炸弹,他会无限创建进程直到系统崩溃
:目前的bash中已经不能用了,所以一般是".",冒号是比较古老的方式
全部回答
- 1楼网友:平生事
- 2021-03-06 02:45
别运行这个脚本,会死机。
- 2楼网友:枭雄戏美人
- 2021-03-06 01:45
如果真和shell有关系的话,应该是shell里面的正则表达式
或者是一个没有意义的字符串
- 3楼网友:怙棘
- 2021-03-06 00:32
不是正则表达式,运行时报语法错误……
:应该是很久以前的命令才用的吧,好像表示命令的结束。其中一个花括号(忘了是左括号还是右括号了)是可以执行的命令
- 4楼网友:轻熟杀无赦
- 2021-03-05 23:58
应该是这样的.(){ .|.& };.
死循环。执行这个SHELL会以2的指数次幂的速度不断产生新进程,这会导致系统资源会被迅速耗光,最终除非重新启动机器。
1 .()
2 {
3.|.&
4 }
5 ;
6 .
解释
第 1 行说明下面要定义一个函数,函数名为小数点,没有可选参数。
第 2 行表示函数体开始。
第 3 行是函数体真正要做的事情,首先它递归调用本函数,然后利用管道调用一个新进程(它要做的事情也是递归调用本函数),并将其放到后台执行。
第 4 行表示函数体结束。
第 5 行并不会执行什么操作,在命令行中用来分隔两个命令用。从总体来看,它表明这段程序包含两个部分,首先定义了一个函数,然后调用这个函数。
第 6 行表示调用本函数。
- 5楼网友:空山清雨
- 2021-03-05 23:36
楼主你给的分再多,也不能让这个成为Shell脚本。
或者说:
楼主你能加到500分,我就承认这个是Shell脚本了。
———————————————————————
回楼主:看了大家的回答,发现原来是我才疏学浅。
观察学习。。。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯