你知道为什么在这个命令中,$x
是可见的
ls -d */ $1 | while read x; do echo $x; done
返回当前目录中的子目录。
但是,当我输入另一个命令时,$x
似乎没有值
ls -d */ $1 | while read x; do ls -lat /order | grep $x; done
什么都不返回
答案 0 :(得分:1)
在管道输出结束时有一个/,你应该过滤它。
ls -d */ $1 | while read xx; do ls -l /order |grep `echo ${xx}|sed 's/.$//'` ; done