当前位置: 首页>>技术教程>>正文


如何通过 Vi 或 gedit 查看巨大的文本文件

问题描述

我通过 crunch-3.6 生成了 11 GB 的 wordlist.txt 。当我尝试使用 Vi 或 gedit 打开文件时,由于文件大小而遇到问题。如何查看此文件?

最佳思路

不要使用文本编辑器查看文本。

有更好的工具:


使用 less 查看文件(使用 Space、End、Home、PageUp、PageDown 滚动;使用 “/something” 搜索;使用 q 离开)。

来自 less 手册:

Less does not have to read the entire input file before starting, so with large input files it starts up faster than text editors like vi (1).

用法:

less wordlist.txt

考虑使用 less -n

-n or –line-numbers:

Suppresses line numbers. The default (to use line numbers) may cause less to run more slowly in some cases, especially with a very large input file. Suppressing line numbers with the -n option will avoid this problem.

(感谢建议 -n 选项@pipe)


使用 grep 仅获取您感兴趣的行:

# Show all Lines beginning with A:
grep "^A:"  wordlist.txt

# Show all Lines ending with x and use less for better viewing
grep "x$"  wordlist.txt | less

使用 headtail 获取第一行或最后 n 行

head wordlist.txt
tail -n 200 wordlist.txt

如需编辑文本,请参阅 this question

次佳思路

通常,仅 “grep” 就足以找到您需要的内容。

如果您在特定行周围需要更多 “context”,则使用“grep -n”查找感兴趣行的行号,然后使用 sed 在该行周围打印出文件的 “chunk”:

$ grep -n 'word' file 
123:A line with with word in it 

$ sed -n '120,125p' file 
A line 
Another line
The line before
A line with with word in it 
The line after
Something else

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/12766.html,未经允许,请勿转载。