前端之家收集整理的这篇文章主要介绍了
通过bash管道处理大文件,它是否缓冲?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要使用如下命令:
$cat large.input.file | process.py > large.output.file
@H_
404_3@问题是,因为这不会使硬盘在读取输入
文件和写入
输出文件之间
跳转困难吗?
@H_
404_3@有没有办法告诉bash在做这种管道时使用大内存缓冲区?
别担心.操作系统会为你做缓冲,它通常非常擅长.
@H_
404_3@话虽如此:
如果您可以更改process.py,则可以实现自己的缓冲.
如果你不能改变process.py,你可以编写自己的buffer.py和
像这样使用它.
$cat large.input.file | buffer.py | process.py | buffer.py > large.output.file
@H_
404_3@从RAM磁盘读取和写入可能要容易得多.