管道问题

sh/bash/dash/ksh/zsh等Shell脚本
回复
wjb_yd
帖子: 11
注册时间: 2007-12-09 12:18

管道问题

#1

帖子 wjb_yd » 2008-05-04 12:57

假设 ls 的显示结果是 bb,bb是一个目录
那么为什么ls | cd 不能进入bb
而必须写成 cd `ls`

希望明白人给小弟讲讲,谢谢了
xiechy
帖子: 1074
注册时间: 2006-01-18 15:01

#2

帖子 xiechy » 2008-05-04 13:00

因为cd不是从输入读取目录名吧
头像
bones7456
帖子: 8495
注册时间: 2006-04-12 20:05
来自: 杭州
联系:

#3

帖子 bones7456 » 2008-05-04 13:41

xiechy 写了:因为cd不是从输入读取目录名吧
那为什么
ls | xargs cd
也不行呢?
关注我的blog: ε==3
vvvli
帖子: 441
注册时间: 2006-10-26 7:02

#4

帖子 vvvli » 2008-05-05 10:13

bones7456 写了:
xiechy 写了:因为cd不是从输入读取目录名吧
那为什么
ls | xargs cd
也不行呢?
说起来 sudo cd 也是不行的。

大概 cd 是 bash的内部命令
xiechy
帖子: 1074
注册时间: 2006-01-18 15:01

#5

帖子 xiechy » 2008-05-05 12:46

type cd
cd is a shell builtin
wjb_yd
帖子: 11
注册时间: 2007-12-09 12:18

#6

帖子 wjb_yd » 2008-05-06 16:27

xiechy 写了:type cd
cd is a shell builtin
为啥内部命令就不能那么用呢?? :?:
头像
wen1987
帖子: 88
注册时间: 2007-07-04 21:54

#7

帖子 wen1987 » 2008-05-16 13:44

wjb_yd 写了:
xiechy 写了:type cd
cd is a shell builtin
为啥内部命令就不能那么用呢?? :?:
你自己写一个xargs就知道了,xargs无法直接调用cd。
Study or die.
回复