Доступны API, которые будут получать эту информацию, но они неуправляемые, что означает, что их нелегко вызвать из PowerShell (.NET). Чтобы вызвать их напрямую, вы должны использовать командлет Add-Type
для компиляции кода C # в сборку в памяти, которую вы затем создадите или вызовете статический метод. У меня есть пример того, как это выглядит в моем блоге.
Написание C # - сложная часть, потому что с ним связано множество недружелюбно выглядящих кодов, посмотрите пример . Если вы знакомы с C #, вы можете адаптировать это к тому, что вы хотите. Если нет, у Марка есть инструмент под названием Coreinfo , который выглядит так, как будто он даст вам информацию, которую вы ищете. Фактически он вызывает тот же неуправляемый API, что и связанный код p / invoke ( GetLogicalProcessorInformation ). Вы можете просто вызвать это из PowerShell и обработать его STDOUT.