AIX行vi打开大文件时提示"Out of memory saving lines for undo"的解决方法

在AIX上,使用vi打开很多行的文件时,会提示"ex: 0602-101 Out of memory saving lines for undo."

解决方法是使用vi的 -y 参数。

使用 man vi 查看vi帮助可以发现关于 -y 参数的说明为:

Overrides the maximum line setting of 1,048,560 with any value greater than 1024. You should request twice the number of lines that you require because the vi editor uses the extra lines for buffer manipulation.

也就是说,默认用vi打开超过524280行的文件时就会提示这个错误,但是可以用 vi -y $((2*$(wc -l $file))) file 来打开。