请问一个问题

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
reson
帖子: 20
注册时间: 2007-02-05 18:06

请问一个问题

#1

帖子 reson » 2007-02-05 23:13

在脚本里面输入
#!/bin/sh
exit
然后
chmod a+x filename
再运行,为什么不会关闭当前的shell?
头像
5451vs5451
帖子: 345
注册时间: 2006-07-14 18:56
来自: Apple Valley, Planet Tux, Linux System

#2

帖子 5451vs5451 » 2007-02-06 10:52

因为调用该脚本时,当前的shell会创建一个子进程,在这个子进程中会运行一个新的shell以执行脚本中的指令,这里的exit结束的是子进程中的shell。
头像
reson
帖子: 20
注册时间: 2007-02-05 18:06

#3

帖子 reson » 2007-02-07 19:35

哦~~~~
是这样呀!那没有exit这句的话这个子shell也会自动exit?
头像
5451vs5451
帖子: 345
注册时间: 2006-07-14 18:56
来自: Apple Valley, Planet Tux, Linux System

#4

帖子 5451vs5451 » 2007-02-07 19:39

脚本执行完了当然就会退出了。但是使用exit就可以执行到一半的时候退出。
switch
帖子: 83
注册时间: 2006-04-24 20:29

Re: 请问一个问题

#5

帖子 switch » 2007-02-07 21:44

reson 写了:在脚本里面输入
#!/bin/sh
exit
然后
chmod a+x filename
再运行,为什么不会关闭当前的shell?
建议LZ做一个非常有意思的东西,新建一个脚本,什么都行,最后加上exit 0。然后加入到.bshrc里开机运行。
看看是什么现象。记得要有root帐户能进入系统修改回来哦。否则后果很严重
回复