Префикс выходного текста в пакете
Я пытаюсь создать удаленный скрипт запроса WMI, который будет запрашивать несколько машин и сообщать мне информацию о конфигурации MemoryChip. Таким образом, мы можем выяснить, какие машины физически имеют 1 или 2 чипа, и какой размер у каждого, и выяснить, кто имеет конфигурацию 1x4 ГБ, и обновить их. База, которую я запускаю: wmic /node:"[ComputerName]" MEMORYCHIP get BankLabel,DeviceLocator,Capacity,Tag > memory.txt
Проблема в том, что это просто выдает следующее, что не дает возможности ссылаться на запрашиваемый компьютер: BankLabel Capacity DeviceLocator Tag
4294967296 DIMM A Физическая память 0
4294967296 DIMM B Физическая память 1
Вы запускаете этот 50x, и нет быстрого способа узнать, какая машина имеет что. То, что я пытаюсь сделать, это сделать сценарий Echo "ComputerName" в строке, предшествующей тексту, или добавить его в следующей строке. Все мои усилия сделать это не дали жизнеспособных результатов, поэтому я надеюсь, что хотя бы один человек, который все еще использует пакет (для вещей, честно говоря, я должен научиться выполнять PowerShell), может помочь мне в этом.
2 ответа
Что я пытаюсь сделать, это иметь сценарий echo
"ComputerName"
Попробуйте следующее:
wmic /node:"[ComputerName]" OS get csname > memory.txt
wmic /node:"[ComputerName]" MEMORYCHIP get BankLabel,DeviceLocator,Capacity,Tag >> memory.txt
Вывод здесь (не включая /node
вариант как я не могу это проверить):
CSName
HAL
BankLabel Capacity DeviceLocator Tag
Bank 0 4294967296 SODIMM1 Physical Memory 0
куда HAL
это имя моего компьютера.
Просто используйте что-то вроде этого:
@echo off
echo "ComputerName" >> Memory.txt
wmic /append:Memory.txt /node:"ComputerName" MemoryChip get BankLabel,DeviceLocator,Capacity,Tag