如何将错误代码编号添加到输出文本文件?

问题描述 投票:1回答:1

我有一个批处理脚本循环遍历所有窗口错误,并将它们放在一个名为helplog2.txt的文本文件中。但是,它们不是由空行分隔的,并且错误消息在它们之前没有错误编号。

有没有办法解决这个问题?

这是我的批处理脚本:

@echo off
If Exist HelpLog2.txt Del HelpLog2.txt
(for /l %%i in (0,1,99999) do net helpmsg %%i 1>NUL 2>&1 && echo %%i & net helpmsg %%i | findstr /i "[a-z]" >> HelpLog2.txt)
Start "" HelpLog2.txt
pause
windows batch-file
1个回答
0
投票

使用此批次代码:

@echo off
del HelpLog2.txt 2>nul
for /L %%I in (0,1,9) do for /F delims^=^ eol^= %%J in ('%SystemRoot%\System32\net.exe helpmsg %%I 2^>^&1') do >>HelpLog2.txt echo     %%I: %%J
for /L %%I in (10,1,99) do for /F delims^=^ eol^= %%J in ('%SystemRoot%\System32\net.exe helpmsg %%I 2^>^&1 ^| %SystemRoot%\System32\findstr.exe /V /C:"NET HELPMSG 3871"') do >>HelpLog2.txt echo    %%I: %%J
for /L %%I in (100,1,999) do for /F delims^=^ eol^= %%J in ('%SystemRoot%\System32\net.exe helpmsg %%I 2^>^&1 ^| %SystemRoot%\System32\findstr.exe /V /C:"NET HELPMSG 3871"') do >>HelpLog2.txt echo   %%I: %%J
for /L %%I in (1000,1,9999) do for /F delims^=^ eol^= %%J in ('%SystemRoot%\System32\net.exe helpmsg %%I 2^>^&1 ^| %SystemRoot%\System32\findstr.exe /V /C:"NET HELPMSG 3871"') do >>HelpLog2.txt echo  %%I: %%J
for /L %%I in (10000,1,99999) do for /F delims^=^ eol^= %%J in ('%SystemRoot%\System32\net.exe helpmsg %%I 2^>^&1 ^| %SystemRoot%\System32\findstr.exe /V /C:"NET HELPMSG 3871"') do >>HelpLog2.txt echo %%I: %%J
start "" HelpLog2.txt

它需要几分钟才能完成,但最后你应该在格式良好的文件HelpLog2.txt中获得所需信息。

要了解使用的命令及其工作方式,请打开命令提示符窗口,执行以下命令,并完全阅读为每个命令显示的所有帮助页面。

  • del /?
  • echo /?
  • findstr /?
  • for /?
  • net /?
  • net helpmsg /?
© www.soinside.com 2019 - 2024. All rights reserved.