文件中的行数

时间:2010-11-08 21:36:35

标签: windows shell

我想使用follow line命令从文件中获取行数,但显示以下错误:

行命令:

for /f %%i in ('find /v /c "" ^< someFile.txt') do set /a lines=%%i print lines

错误:

%%i was unexpected at this time.

有人可以告诉我代码中有什么不好,或者告诉我其他代码来获取文件中的行数吗?

3 个答案:

答案 0 :(得分:4)

除了该行中多余的print lines之外,它应该有效。但请注意,您无法直接在命令行上执行该行。 %符号加倍,以便在批处理文件中使用。因此,将以下行放在批处理文件中:

for /f %%i in ('find /v /c "" ^< someFile.txt') do set /a lines=%%i

或直接在命令行上执行以下行:

for /f %i in ('find /v /c "" ^< someFile.txt') do set /a lines=%i

正如Anders所说,/a并非非常必要。但是,它不会破坏任何东西。您的问题实际上是您尝试直接在命令行上执行该行。删除/a将无法完成任何操作。

答案 1 :(得分:0)

set /a用于数学计算(set /a x=1+1

为我删除/工作:

for /f %%i in ('find /v /c "" ^< someFile.txt') do set lines=%%i print lines
echo %lines%

答案 2 :(得分:-1)

这有效:

find /v /c "Some text that won't be in any file" somefile.txt