PowerShell: objeto devuelto con valor máximo en propiedad
A menudo, es posible que desee devolver el objeto que tiene el valor máximo en una propiedad específica en PowerShell.
Puede utilizar la siguiente sintaxis para hacerlo:
$max = ($my_data | Measure-Object -Property Points -maximum).Maximum
$my_data | Where-Object { $_.Points -eq $max}Este ejemplo en particular devolverá el objeto que tiene el valor máximo en la propiedad Points del objeto $my_data.
El siguiente ejemplo muestra cómo utilizar esta sintaxis en la práctica.
Ejemplo: objeto devuelto con valor máximo en propiedad en PowerShell
Supongamos que tenemos un archivo CSV llamado player_data.csv que contiene información sobre varios jugadores de baloncesto.
Podemos usar el cmdlet Import-Csv para importar el contenido de este archivo a un objeto llamado $my_data:
$my_data = Import-Csv player_data.csvLa siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Ahora supongamos que nos gustaría devolver la fila completa de este archivo CSV que contiene el valor máximo en la columna Puntos.
Podemos utilizar la siguiente sintaxis para hacerlo:
$max = ($my_data | Measure-Object -Property Points -maximum).Maximum
$my_data | Where-Object { $_.Points -eq $max}La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Observe que esto devuelve la fila del archivo CSV que tiene un valor de 24 en la columna Puntos, que representa el valor máximo en la columna.
No dude en cambiar Puntos por un nombre de propiedad diferente para devolver el objeto con el valor más alto en una propiedad diferente.

