当前位置:  开发笔记 > 编程语言 > 正文

重定向输出时cd不起作用?

如何解决《重定向输出时cd不起作用?》经验,为你挑选了1个好方法。

这是一个益智游戏:任何人都可以解释为什么cd输出重定向到管道失败?

例如:

james@machine:~$ cd /tmp                          # fine, no problem
james@machine:~$ cd /tmp | grep 'foo'             # doesn't work
james@machine:~$ cd /tmp | tee -a output.log      # doesn't work
james@machine:~$ cd /tmp >out.log                 # does work

在OSX,Ubuntu和RHEL上验证.

有任何想法吗?

编辑:似乎很奇怪,我正在输出cd?原因是它来自一个包含任意shell命令和日志条目并处理输出的函数.



1> Tmdean..:

重定向输出时,它会生成子shell进程,更改子进程中的目录并退出.当您不重定向输出时,它不会产生任何新进程,因为它是一个内置的shell命令.

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有