Получить значение из вывода команды - PullRequest
0 голосов
/ 02 июля 2018

Я ищу метод, который позволил бы мне получить значение из вывода команды. Примером может быть получение IP-адреса из вывода ipconfig или состояния шифрования из вывода manage-bde -status. По сути это значение после двоеточия ":" . Я попытался поиграть с опциями findstr, но не смог получить «просто» значение. В примере ipconfig мне нужен только IP-адрес, а в примере «manage-bde» я хочу только слово «защита отключена». Две вышеупомянутые команды являются только примерами.

Кроме того, мне нужно выяснить способ выполнения foreach в случае, если существует более одного IP / Nic или более одного тома.

Я мог бы быть либо одной командой, либо вывести результаты в файл, а затем запустить что-нибудь для файла.

1 Ответ

0 голосов
/ 02 июля 2018

Я создал быстрый пример того, что вы могли бы сделать для примера ipconfig.

По сути, я извлекаю все конфигурации IP для моего локального компьютера, тогда, если они больше 1, он будет проходить по каждой из них и создавать объект, который будет более читабельным.

#Get IP Configurations
$ipList = Get-NetIPConfiguration

#If there is more than 1 item in the ipList
If($ipList.count -gt 1){

    #Loop through each of the IPs int the list
    foreach($entry in $ipList){

        #Create a Custom PowerShell Object and Assign empty attributes for the Name and IP
        $object = new-object psobject | select-object Name, IPAddress

        #Add a value to the $object.Name property
        $object.Name = $entry.InterfaceAlias

        #Add a value to the $object.IPAddress property
        $object.IPAddress = $entry | select -ExpandProperty IPv4Address

        #Store the value of each object in an array
        [array]$output += $object
    }
}

#Output the contents of the Array into a file
$output | export-csv c:\temp\IP_Info.csv -NoTypeInformation

Теперь вы можете сделать еще кое-что. В настоящее время выводится System.Object, если не найдено значение IP, также ищет только IPv4Address

Надеюсь, это поможет вам найти решение

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