Powershell - что говорит эта строчка? - PullRequest
0 голосов
/ 26 сентября 2018

Я разработчик ServiceNow.Я имею дело со сценарием PowerShell, который я не знаю.Может кто-нибудь сказать мне, что происходит в строке ниже?Спасибо!

$currentuserid = Get-WmiObject -Class win32_computersystem -ComputerName $workstation | Select-Object -ExpandProperty Username

1 Ответ

0 голосов
/ 26 сентября 2018

Позволяет разбить эту команду на части

$currentuserid = Get-WmiObject -Class win32_computersystem -ComputerName $workstation | Select-Object -ExpandProperty Username

В powershell $ - идентификатор переменной.Это означает, что $ currentuserid будет равно выводу последней команды в канале. В этом случае Select-Object .

Также в powershell -whither после того, как команда является параметром.

Символ | является трубой.

Get-WmiObject - это команда, выполняющая вызов WMI для win32_computersystem через параметр -class , который является лишь некоторой базовой информацией о компьютерной системе.Параметр -ComputerName с переменной $ workstation означает выполнение удаленного вызова WMI на другом компьютере, который мне неизвестен, поскольку я не знаю, что находится внутри переменной $ workstation.Затем выходные данные передаются по каналу | в команду select-object , которая позволяет вырезать данные из свойства.Параметр -ExpandProperty означает просто вернуть то, что равно значению свойства.Значение свойства, которое он хотел, было Имя пользователя

Проще говоря, оно получает имя пользователя из класса Win32_computersystem в WMI-вызове неизвестной удаленной системы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...