试图将两个命令的输出重定向到一个txt文件

Trying to redirect the output of two commands to a txt file

正在尝试提取笔记本电脑序列号列表以进行库存。第一个命令成功列出了序列号,但遗漏了计算机名称。

for /f %A in (CompNames.txt) do wmic /user:user /password:pass /node:"%A" bios get serialnumber >> serials.txt

第二个命令确实列出了名称和序列号,但它添加了一堆空格并且输出不容易阅读。它不在列表中,只是几行很长的内容。

for /f %A in (CompNames.txt) do echo "%A" >> serials.txt & wmic /user:user /password:pass /node:"%A" bios get serialnumber >> serials.txt

如何像第一个命令一样获取列表,但同时列出计算机名称?

for /f %A in (CompNames.txt) do wmic /user:user /password:pass /node:"%A" bios get serialnumber /format:csv >> serials.txt

不需要 for 循环。

WMIC 可以处理它自己的文本文件。

wmic /node:@c:\computernames.txt BIOS get serialnumber /format:hform

@ 表示节点是计算机名称的文本文件(没有 \)and/or ip 地址。

127.0.0.1
serenity
192.0.0.1

格式试试

列表 table xml 格式文件 hform(一个 html 列表) htable(一个htmltable)

一些格式列出节点以及 wmic 数据。

虽然您可以通过 wmic 使用重定向,但 wmic 有两个命令行开关 /output:/append:(Clip 将执行剪贴板 /append:clip)。注意 Output 发送到文件,append 附加到文件并发送到屏幕。