我使用vbscript写了一个简单的tail命令。它工作正常,除了非常大的文件,它必须读取整个文件,以获得最后10行。有没有办法寻找文件的末尾然后向后读十行?
答案 0 :(得分:0)
我担心在VBS TextStream中向后搜索是不可能的,但是你可以寻找一个位置,而不是阅读整个文件。在EOF之前1K,然后读取文件的其余部分,仅显示最后10行。
编辑:我正在添加一些示例代码来说明这个想法:
set fso = CreateObject("Scripting.FileSystemObject")
set file = fso.GetFile(filePath)
set stream = file.OpenAsTextStream(1, -2)
pos1KBeforeEnd = file.Size-1024
if pos1KBeforeEnd<0 then pos1KBeforeEnd=0
stream.Skip pos1KBeforeEnd