bash – 为什么管道进入猫的速度要快于对猫的管道?
发布时间:2020-12-15 21:01:11 所属栏目:安全 来源:网络整理
导读:我刚刚发现找到了.比找到要慢. |猫.这是做时间查找的结果.在我的主目录中3次: First:real 0m4.385suser 0m0.546ssys 0m2.072sSecond:real 0m4.090suser 0m0.514ssys 0m1.798sThird:real 0m4.197suser 0m0.508ssys 0m1.905s 做时间找. |而猫显着改善了结果:
我刚刚发现找到了.比找到要慢. |猫.这是做时间查找的结果.在我的主目录中3次:
First: real 0m4.385s user 0m0.546s sys 0m2.072s Second: real 0m4.090s user 0m0.514s sys 0m1.798s Third: real 0m4.197s user 0m0.508s sys 0m1.905s 做时间找. |而猫显着改善了结果: First: real 0m2.988s user 0m0.378s sys 0m1.649s Second: real 0m2.768s user 0m0.370s sys 0m1.471s Third: real 0m2.768s user 0m0.370s sys 0m1.471s 你可以告诉,找到. |猫要快得多.我对此感到困惑,cat唯一能做的就是将输入复制到输出中,对吧?我真的不知道为什么会这样,如果有人能告诉我它为什么,我会很高兴. 为了记录,这是find的输出. |厕所: 246646 477986 25198490 谢谢. 解决方法
打电话找.本身并不比找到慢. |猫.将输出打印到stdout时速度会慢一些.
当您将输出重定向到/ dev / null(特别是调用find.> / dev / null并查找.| cat> / dev / null)时,您应该观察到|猫比没有慢. 从这些结果中我想到的唯一结论是,通过让cat运行一个单独的打印过程,find命令不会被阻止打印到stdout,而cat会作为一个单独的进程运行,所以当它是阻止打印到stdout,find命令仍在运行实际查找文件. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |