batch:忽略输出的最后一行

时间:2012-07-11 00:40:11

标签: windows batch-file

我有一个非常基本的脚本,可以回复本地管理员帐户。我的目标是摆脱所有页眉/页脚信息。

到目前为止,我有:

FOR /F "skip=6" %%G IN ('net localgroup administrators')  DO echo %%G

哪个回声:

Administrator
MyName
The

“the”是页脚中的第一个单词:“命令成功完成。”

所以我想摆脱“The”但我明白我可能需要重组整个脚本,这很好。我已尝试保存到变量%str%,但您无法设置多行变量。此外,使用txt文件作为缓冲区不是一种选择。

任何输入?

1 个答案:

答案 0 :(得分:6)

我可以想到两个简单的解决方案:

FOR /F "skip=6" %%G IN ('net localgroup administrators')  DO if %%G neq The echo %%G

FOR /F "skip=6" %%G IN ('net localgroup administrators ^| findstr /vb The')  DO echo %%G

我想有人可能认为用户名可能是“The”,在这种情况下,您可以更精确地使用过滤器:

FOR /F "skip=6" %%G IN ('net localgroup administrators ^| findstr /vc:"The command completed successfully."')  DO echo %%G