使用Windows批处理文件从txt文件中仅读取x行

时间:2010-09-27 14:56:21

标签: windows file batch-file

如何从a.txt文件中只读取X行?

该文件包含目录的所有名称,我只想读取x行。 X可以是1到99之间的数字

2 个答案:

答案 0 :(得分:2)

您需要根据需要对其进行修改,但下面的脚本将遍历文件'directories.txt',并ECHO行的内容,直到您达到{{1}中设置的最大行数为止}}

maxlines

答案 1 :(得分:-1)

你可以使用vbscript。这是一个例子

Set objFS = CreateObject("Scripting.FileSystemObject")
Set objArgs = WScript.Arguments
strNum = objArgs(0)
strFile=objArgs(1)
Set objFile = objFS.OpenTextFile(strFile)
Do Until objFile.AtEndOfLine
    If CInt(objFile.Line) > CInt(strNum) Then
      Exit Do  
    End If 
    strLine=objFile.ReadLine
    WScript.Echo strLine    
Loop

另存为myscript.vbs和

c:\test> cscript //nologo myscript.vbs 99 file

或者如果有奢侈的安装工具, 您可以为Windows下载sedgawk。然后在命令行上

sed.exe "99q" file
gawk.exe "NR>2{exit}1" file