CLI—使用for命令时忽略一行



我正在尝试设置一个变量,该变量将标识笔记本电脑的品牌。

我使用命令

wmic-cproduct获取供应商

这给出了以下输出

供应商
LENOVO
(空白(

因此,基于该命令,我以下面的方式使用了for命令,尝试设置一个值为"LENOVO"的变量

for/f"skip=1 tokens=1 delims="%i in('mic csproduct get vendor'(设置供应商=%i

然而,问题是wmic命令的输出实际上在单词LENOVO下产生了一个空行,所以我的变量被设置为一个空值。是否有任何方法可以阻止for命令解析这第三行,从而在变量设置为"lenovo"值后停止?

skip函数运行良好,并且完全绕过第一行。然而,它似乎没有让我选择说,例如,跳过第1行和第3行,但留下第2行。我已经尝试使用EOL参数来忽略空白行,但for命令每次仍然读取空的第三行。

非常感谢

有点古怪,但请尝试在您的行中使用以下内容。它将过滤掉供应商行,然后按字母顺序排序,将空行放在第一位。如果你真的需要定期做这样的事情,请检查一些Unix实用程序(如sed和awk(的Windows端口。

wmic csproduct get vendor | find /v /i "vendor" | sort

相关内容

  • 没有找到相关文章

最新更新