При создании инструмента аудита для моей сети я обнаружил, что WMIC выводит с пробелами между каждым символом, когда сопровождается повторением обычного текста. Например,
Это:
@echo off
echo Foo >> "C:\test.txt"
wmic CPU Get AddressWidth >> "C:\test.txt"
wmic CPU Get Description >> "C:\test.txt"
Возвращает это:
Foo
A d d r e s s W i d t h
6 4
D e s c r i p t i o n
I n t e l 6 4 F a m i l y 6 M o d e l 6 9 S t e p p i n g 1
Если я удалю (rem
) строку echo Foo
, выходные данные будут отформатированы, так как есть только один тип вывода:
AddressWidth
64
Description
Intel64 Family 6 Model 69 Stepping 1
Я читаю, что это потому, что WMIC выводит в UNICODE, в то время как стандартные пакетные команды выводят в ANSI. Можно ли объединить оба, чтобы иметь общий формат? Может ли кто-нибудь объяснить более подробно различные типы форматов, почему WMIC будет выводить данные другого типа и / или какие-либо другие факторы, влияющие на этот результат? Я нашел несколько хлебных крошек, но ничего конкретного.