find /root -size +20k -a -size -50k | ls 命令的结果为什么是单独执行ls命令的结果?

来源:9-6 管道符

GoAshore

2019-12-24 01:11

find /root -size +20k -a -size -50k | ls
管道符| 应该是将第一个命令的结果作为第二个命令的操作对象
那为什么单独执行 find /root -size +20k -a -size -50k 结果是正确的,但是加上ls 结果就变为直接执行ls后的结果?
大神解答一下

写回答 关注

2回答

  • 慕姐7382605
    2020-06-24 14:24:35

    应该怎么写呢

  • 慕函数8302408
    2019-12-31 15:13:25

    因为管道符之前的对象不作为ls的输入  所以程序只会在页面打印ls命令的结果   管道符之前执行的结果被scanf()函数接收后不能作为ls的输入

Linux达人养成计划 I

Linux入门视频教程,以通俗易懂的语言带你感受linux之美

399343 学习 · 3791 问题

查看课程

相似问题