Variables 将文件中的行数保存为批处理文件中的变量

Variables 将文件中的行数保存为批处理文件中的变量,variables,batch-file,Variables,Batch File,我的批处理文件中有一行非常好的代码,它告诉我一个文件中有多少行: find /v /c "" C:\Users\c1921\mypath\myfolder\!$Unit!.txt 这很好,对于我正在处理的特定文件,我得到了31。我的问题是文件看起来像这样: Microsoft (R) Windows Script Host Version 5.8 Copyright (C) Microsoft Corporation. All rights reserved. my_handled

我的批处理文件中有一行非常好的代码,它告诉我一个文件中有多少行:

 find /v /c "" C:\Users\c1921\mypath\myfolder\!$Unit!.txt
这很好,对于我正在处理的特定文件,我得到了31。我的问题是文件看起来像这样:

 Microsoft (R) Windows Script Host Version 5.8
 Copyright (C) Microsoft Corporation. All rights reserved.

 my_handled
 219278
 check
 219276
 control
 219274
我希望能够完全跳过前三行,然后保存第一个值,然后在下一个命令中使用第二个值,等等

如何将编号(例如31)保存到批处理文件中的变量中

凭直觉,我试着设置一个这样的变量,但没有效果:

set "$testVar="""
echo !$testVar! 
@ECHO关闭
SETLOCAL
设置/a计数=3
设置“first=”
对于/f“skip=3delims=”%(q25089468.txt)中的%%a(
如果首先定义(调用:显示%%a)其他(设置“first=%%a”)
)
回声计数=%count%
后藤:EOF
:显示
第一次回显=%第一次%2=%1
设置/a计数+=2
设置“first=”
后藤:eof
我使用了一个名为
q25089468.txt
的文件,其中包含用于测试的数据

你似乎在问两件完全不同的事情——如何计算行数和如何跳过前3行,然后将后面的每一行传递给另一个进程。

@ECHO OFF
SETLOCAL
设置/a计数=3
设置“first=”
对于/f“skip=3delims=”%(q25089468.txt)中的%%a(
如果首先定义(调用:显示%%a)其他(设置“first=%%a”)
)
回声计数=%count%
后藤:EOF
:显示
第一次回显=%第一次%2=%1
设置/a计数+=2
设置“first=”
后藤:eof
我使用了一个名为
q25089468.txt
的文件,其中包含用于测试的数据

你似乎在问两件完全不同的事情——如何计算行数和如何跳过前3行,然后将后面的每一行传递给另一个进程。

@ECHO OFF
SETLOCAL
设置/a计数=3
设置“first=”
对于/f“skip=3delims=”%(q25089468.txt)中的%%a(
如果首先定义(调用:显示%%a)其他(设置“first=%%a”)
)
回声计数=%count%
后藤:EOF
:显示
第一次回显=%第一次%2=%1
设置/a计数+=2
设置“first=”
后藤:eof
我使用了一个名为
q25089468.txt
的文件,其中包含用于测试的数据

你似乎在问两件完全不同的事情——如何计算行数和如何跳过前3行,然后将后面的每一行传递给另一个进程。

@ECHO OFF
SETLOCAL
设置/a计数=3
设置“first=”
对于/f“skip=3delims=”%(q25089468.txt)中的%%a(
如果首先定义(调用:显示%%a)其他(设置“first=%%a”)
)
回声计数=%count%
后藤:EOF
:显示
第一次回显=%第一次%2=%1
设置/a计数+=2
设置“first=”
后藤:eof
我使用了一个名为
q25089468.txt
的文件,其中包含用于测试的数据


您似乎在问两个完全不同的问题—如何计算行数和如何跳过前3行,然后将随后的每一行传递到另一个进程。

此命令允许您“将数字(例如31)保存到我的批处理文件中的变量中”:

然而,在我看来,如果文本文件中的前三行从一开始就被禁止,这个问题可以完全避免。我认为该文件是通过JScript程序的VBScript生成的,该程序的执行方式如下:

cscript progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
cscript //nologo progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
文本文件中的前三行可以通过以下方式避免添加
//nologo
开关:

cscript progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
cscript //nologo progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt

此命令允许您“将编号(例如31)保存到我的批处理文件中的变量中”:

然而,在我看来,如果文本文件中的前三行从一开始就被禁止,这个问题可以完全避免。我认为该文件是通过JScript程序的VBScript生成的,该程序的执行方式如下:

cscript progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
cscript //nologo progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
文本文件中的前三行可以通过以下方式避免添加
//nologo
开关:

cscript progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
cscript //nologo progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt

此命令允许您“将编号(例如31)保存到我的批处理文件中的变量中”:

然而,在我看来,如果文本文件中的前三行从一开始就被禁止,这个问题可以完全避免。我认为该文件是通过JScript程序的VBScript生成的,该程序的执行方式如下:

cscript progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
cscript //nologo progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
文本文件中的前三行可以通过以下方式避免添加
//nologo
开关:

cscript progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
cscript //nologo progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt

此命令允许您“将编号(例如31)保存到我的批处理文件中的变量中”:

然而,在我看来,如果文本文件中的前三行从一开始就被禁止,这个问题可以完全避免。我认为该文件是通过JScript程序的VBScript生成的,该程序的执行方式如下:

cscript progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
cscript //nologo progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
文本文件中的前三行可以通过以下方式避免添加
//nologo
开关:

cscript progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt
cscript //nologo progname.vbs > C:\Users\c1921\mypath\myfolder\!$Unit!.txt

我从未听说过nologo解决了这个问题。我打算数一数这些行,然后跳过前三行,然后从第四行开始,但这样做效果更好,谢谢你。在解决这个问题之前,我从未听说过
//nologo
。我打算数一数这些行,然后跳过前三行,然后从第四行开始,但这样做效果更好,谢谢你。在解决这个问题之前,我从未听说过
//nologo
。我打算数一数这些行,然后跳过前三行,然后从第四行开始,但这样做效果更好,谢谢你。在解决这个问题之前,我从未听说过
//nologo
。我本来打算数一数,然后跳过前三行,然后从第四行开始,但是这样更好,谢谢。