免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2011 | 回复: 7
打印 上一主题 下一主题

subshell 进程? 谢谢 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-02 08:37 |只看该作者 |倒序浏览
脚本如下:
         #!/bin/bash
          #myscript
         echo "this is a test!"
运行方式如下:
         $./myscript

问题如下:

看了一些文章,知道了执行过程如下:当前shell首先fork一个subshell, 在subshell中执行脚本中的每一条指令(对相应的命令根据情况可能会开一个各自的进程)

我的疑问是:既然是在subshell中执行了命令 echo "this is a test!", 为何结果却显示在我们本来的shell中?

./myscript本身也是一条命令?会有自己的进程环境吗?

谢谢各位, 我新手,没分送,抱歉

论坛徽章:
0
2 [报告]
发表于 2007-09-02 09:12 |只看该作者
每个进程的stdout都是一个东西,就是你的屏幕。

论坛徽章:
0
3 [报告]
发表于 2007-09-02 09:34 |只看该作者
原帖由 zwylinux 于 2007-9-2 09:12 发表
每个进程的stdout都是一个东西,就是你的屏幕。


谢谢
那  ./myscript本身也是一条命令?会有自己的进程环境吗?

论坛徽章:
0
4 [报告]
发表于 2007-09-02 09:44 |只看该作者
./myscript   可执行程序!      有进程

你可以写个死循环,来查看这个进程.

论坛徽章:
0
5 [报告]
发表于 2007-09-02 10:00 |只看该作者
原帖由 linux_paly 于 2007-9-2 09:44 发表
./myscript   可执行程序!      有进程

你可以写个死循环,来查看这个进程.


你是指让脚本一直运行,用ps察看?

那如果我想查看它的父进程号,该用什么命令? 谢谢

那能告知  本来的shell,  subshell,  还有可执行程序./myscript这几个进程到底都有些什么关系?

[ 本帖最后由 water2oil 于 2007-9-2 10:04 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2007-09-02 10:40 |只看该作者
$cat zzz
#!/bin/bash

$./zzz|ps -x &>zzz.txt
$ps -x &>xxx.txt

diff xxx.txt zzz.txt

<  2784 pts/0    S      0:00 -bash
---
>  2784 pts/0    R      0:00 -bash
63c63,64
<  3282 pts/0    R      0:00 ps -x
---
>  3274 pts/0    S      0:00 -bash
>  3275 pts/0    R      0:00 ps -x

zzz.txt多一个bash

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
7 [报告]
发表于 2007-09-02 10:42 |只看该作者
原帖由 water2oil 于 2007-9-2 09:34 发表


谢谢
那  ./myscript本身也是一条命令?会有自己的进程环境吗?

/home/lee#cat test.sh
#!/bin/bash
sleep 1000000
/home/lee#sh test.sh &
[1] 4907
/home/lee#pstree # 没有用的输出略
...

    |-gnome-terminal-+-bash-+-pstree
     |                |      `-sh---sleep
....
注意红色部分, 由于这个文件是在gnome-terminal终端发起的, 执行test.sh文件时, bash开启一个子shell, 来运行test.sh里的内容, 这内容就是一个简单的sleep

论坛徽章:
0
8 [报告]
发表于 2007-09-02 10:50 |只看该作者

谢谢两位兄长的关注

谢谢指点, 我来试一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP