我怎样才能看到一个大文件149351行?

我试图导入一个大的MySQL转储文件,并得到一个确定的行149351(4207442中)一致的错误。 我想看看那条线是什么。

我发现这样做的最好方法是这样的:

head -149351 dump.sql | tail 

但是,这是非常缓慢的。 我试图在vi加载文件,但它不能处理一个大的文件。 我在Windows XP上,并有cygwin。

 sed -n '149351p' dump.sql 

可能比头部/尾部组合稍快(但也许不是)。Vartec是正确的; 没有比阅读至less第149351行更快的方法。

您可以使用以下命令查看单个行:

 tail -n+<line number> <file>|head -n1 

在你的情况下: tail -n + 149351 dump.sql | head -n1

该命令从行号149351开始尾随文件,并使用head命令仅显示尾部结果的第一行。

我build议使用split命令将这个巨大的转储分解成更易于pipe理的部分:

 split -l20000 mysql.dump mysql.dump. 

将创build名称为mysql.dump.aa,mysql.dump.ab,….的文件。每个文件将包含20000行 – 编辑工具应该能够轻松地处理这些小文件!

一旦你解决了这个问题,轻松地重新组合它们:

 cat mysql.dump.* > mysql.dumptest 

要么

 cat mysql.dump.* | mysqlimportcommand 

我通常只是启动TextPad ,即使在1GB的文件。

Ctrl + G是Go To菜单,您可以在其中select行号。

如果这些线条的长度是可变的,那么确实没有更快的方法,然后通过第一个149351扫描(这正是你用“ head ”所做的)。

惊讶没有人build议:

 grep -n 149351 dump.sql 

自从它的窗户,我很惊讶没有人build议

get-content -readcount 0 | select-object -index 149350

当然,在vi中,你可以使用以下命令设置行号:

 :set number 

然后使用以下命令行转到149351行:

 :149351 

或者,您可以使用以下命令在特定行号处启动vi:

 vi +36 blah 

希望有帮助…

nano (用-w)打开它,一旦打开CTRL _并input要去的行号。