#!/bin/bashwhile :do echo "1 2 3 4" sleep 1done
我不想削减第3栏:
$./loop.sh | cut -d' ' -f3
这工作正常,但当我尝试将其输出到文件时:
$./loop.sh | cut -d' ' -f3 > myfile
什么都没发生,这个文件是空的.我期望看到3列的列,但什么也没得到.我做错了什么?
解决方法 正如我在评论中提到的那样,它可能正在缓冲.当我尝试这个时,我得到了相同的结果.您可以使用stdbuf来修改缓冲,就像这样(至少,这对我有用):
./loop.sh | stdbuf -o0 cut -d' ' -f3 > myfile
缓冲在管道链的最后部分完成(或似乎已完成),因此就是放置stdbuf的地方.
有关详细信息,请参阅man stdbuf.
总结以上是内存溢出为你收集整理的linux – 如何将剪切输出写入文件全部内容,希望文章能够帮你解决linux – 如何将剪切输出写入文件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)