我们经常使用sort来对文本文件进行排序,因为排序是很多操作的基础。通常会使用“-u”选项来清除重复行。因此排序的效率往往是瓶颈所在,要优化sort的效率,可以试下下面的方法:
LC_ALL=C sort -S 80% -o output.txt input.txt
- LC_ALL=C意思是使用C的字符串比较方式,其实就是不对文件中的字节流进行字符解码,字符编解码是非常耗时的操作;
- -S 80%即设置可用的内存,尽量设大;
我们经常使用sort来对文本文件进行排序,因为排序是很多操作的基础。通常会使用“-u”选项来清除重复行。因此排序的效率往往是瓶颈所在,要优化sort的效率,可以试下下面的方法:
LC_ALL=C sort -S 80% -o output.txt input.txt