我需要在Windows 7中检索最后n行巨大文件(1-4 Gb).由于公司限制,我无法运行任何非内置命令.问题是我找到的所有解决方案似乎都读取整个文件,所以它们非常慢.
这可以快速完成吗?
笔记:
这里的解决方案Windows Powershell中的Unix tail等效命令不起作用.使用-wait不会让它变快.我没有-tail(我不知道它是否会起作用).
PS:有相当的几个相关问题head及tail,但不能集中在速度的问题.因此,有用或可接受的答案在这里可能没用.例如,
https://superuser.com/questions/859870/windows-equivalent-of-the-head-c-command
我无法将文件加载到RAM中(假设用户可能需要具有100亿条记录的第一个十亿个文件)
这是我的解决方案,但我认为必须有一个更快的方法?
谢谢
# specified by the user
infile <- "/some/big/file.txt"
outfile <- "/some/smaller/file.txt"
num_lines <- 1000
# my attempt
incon <- file( infile , "r")
outcon <- file( outfile , "w")
for ( i in seq( num_lines ) ){
line <- readLines( incon , 1 )
writeLines( line , outcon )
}
close( incon )
close( outcon )
Run Code Online (Sandbox Code Playgroud) 如何在Windows CMD中打印文件的前5行?
有一个问题我无法使用PowerShell(特定任务)和批处理脚本.你能帮帮我吗?