当前位置:  技术问答>linux和unix

关于子shell

    来源: 互联网  发布时间:2016-11-22

    本文导语:  本帖最后由 bayougeng 于 2011-04-14 15:27:41 编辑 我看了一篇教程:http://www.ibm.com/developerworks/cn/linux/l-cn-nohup/index.html 里面有一个subshell的示例: [root@pvcent107 ~]# (ping www.ibm.com &) [root@pvcent107 ~]# ps -ef |grep www.ibm.com root  ...

本帖最后由 bayougeng 于 2011-04-14 15:27:41 编辑
我看了一篇教程:http://www.ibm.com/developerworks/cn/linux/l-cn-nohup/index.html
里面有一个subshell的示例:
[root@pvcent107 ~]# (ping www.ibm.com &)
[root@pvcent107 ~]# ps -ef |grep www.ibm.com
root     16270     1  0 14:13 pts/4    00:00:00 ping www.ibm.com
root     16278 15362  0 14:13 pts/4    00:00:00 grep www.ibm.com
但在我的机器上,我试了一下,却不是这样的,在我的Redhat上是这样的结果:
[root@localhost ~]# (ping 192.168.19.1 &)
[root@localhost ~]# PING 192.168.19.1 (192.168.19.1) 56(84) bytes of data.
64 bytes from 192.168.19.1: icmp_seq=1 ttl=128 time=2.99 ms
64 bytes from 192.168.19.1: icmp_seq=2 ttl=128 time=1.58 ms
64 bytes from 192.168.19.1: icmp_seq=3 ttl=128 time=0.721 ms
也就是说,subshell中的输出被显示到了当前shell上。
为什么会这样呢?
另外,我觉得即使不将这个命令放到括号中运行,也不应该有输出,因为我已经指定它是一个后台进程,但是事实是这样:
[root@localhost ~]# ping 192.168.19.1 & 
[1] 5650
PING 192.168.19.1 (192.168.19.1) 56(84) bytes of data.
[root@localhost ~]# 64 bytes from 192.168.19.1: icmp_seq=1 ttl=128 time=1.84 ms
64 bytes from 192.168.19.1: icmp_seq=2 ttl=128 time=1.10 ms

|
后台进程同样会有输出啊
ls &
照样能输出文件列表

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • linux bash shell命令:grep文本搜索工具简介
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • java开发知识 iis7站长之家
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • 请问“当前shell”和“子shell”的区别?
  • 怎么知道当前是B_SHELL 还是C_SHELL
  • 用户登陆后运行某SHELL退出SHELL就回到LOGIN是怎么作到的?
  • 怎么写shell代码 写好shell怎么运行?
  • 请问一个shell中如何获取这个shell自身抛出的错误?
  • 非登录shell是什么 意思,和登录shell有什么区别啊
  • Solaris 8中修改root的shell为一个非法的Shell后怎么办?
  • 各位Shell高人,如何取得Shell的第10个入口参数?$10不行啊,急!
  • shell 编程 执行shell新建多个终端 并执行程序
  • 如何在一台机器上的shell中执行另外一台机器上的shell


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3