【发布时间】:2021-03-31 06:19:54
【问题描述】:
运行时
ls | sort | cd /home
...我知道管道连接进程。
在Linux中,每个命令都运行在一个独立的进程中,我们知道它会将左边的stdout传递给右边的进程。
但出乎我的意料,什么都没有运行。 应该会更改到 /home 的目录,但没有任何反应。这是为什么呢?
【问题讨论】:
-
cd将目录作为参数读取,而不是在stdin上读取,除非目录指定为'-'。 -
@HwanE 当您运行
ls | sort | cd /home时,您期望会发生什么?为什么?