LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1145|回复: 3

shell 跳转问题

[复制链接]
发表于 2007-6-19 16:01:15 | 显示全部楼层 |阅读模式
我在当前shell A 中,执行一个语句,会进入到新的shell当中,然后在新的shell当中,执行一个命令,
请教 我怎么能让在新shell中执行的命令正常工作
enter_new_shell
commandA
$ (enter_new_shell;commandA)
这样不行,commandA还是在老shell中执行
发表于 2007-6-19 17:29:03 | 显示全部楼层
管道会生成sub-shell来执行命令
  1. [1 No.515 huanlf@huan ~]$ echo "Parent pid: $$"
  2. Parent pid: 5245
  3. [0 No.516 huanlf@huan ~]$ echo 'echo Child pid: $$' | bash
  4. Child pid: 5898
复制代码

() 里运行的代码也是在sub-shell里的
但很奇怪的是。。。
  1. [1 No.530 huanlf@huan ~]$ echo $$
  2. 5245
  3. [0 No.531 huanlf@huan ~]$ ( echo $$ )
  4. 5245
复制代码
哪位高人解释一下
回复 支持 反对

使用道具 举报

发表于 2007-6-19 17:33:02 | 显示全部楼层
man bash里找到这么个解释
       $      Expands  to the process ID of the shell.  In a () subshell, it expands to the process
              ID of the current shell, not the subshell.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-20 10:01:33 | 显示全部楼层
up .....
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表