linux:shell编程遇到一个问题:sort: write failed: standard output: Broken pipe

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34355232/article/details/85014810

产生的原因:是由于sort与head这个参数一起使用了,所以导致了这样的事情发生。
例如:cat message.txt| sort -nrk 3 |head -n 10这个命令执行过后就会有上面的错误发生

sort| head总是报告一个错误,如果在sort写入所有输出之前head退出(或者以其他方式关闭它的stdin)(如果由sort写入的流比head消耗的流长得多)。
这是按设计的:如果sort不能写出它的所有输出,那么它应该会失败; 如果它忽略了这样的故障,它也会忽略由于其他原因而无法写入其输出的情况(磁盘已满,网络连接断开等。
这没有什么不寻常或不可取的。 如果您不关心错误,请忽略它,并检查管道输出的行数以确定您是否有错误条件。
参考:https://stackoverflow.com/questions/46202653/bash-error-in-sort-sort-write-failed-standard-output-broken-pipe

猜你喜欢

转载自blog.csdn.net/qq_34355232/article/details/85014810