Búsqueda de sitios web

Cómo comparar dos veces en PowerShell (con ejemplo)


Puede utilizar la siguiente sintaxis básica para comparar dos tiempos en PowerShell:

$datetime1.TimeOfDay -lt $datetime2.TimeOfDay

Este ejemplo supone que $datetime1 y $datetime2 son variables de fecha y hora y comprueba si la hora de $datetime1 es menor que (es decir, “anterior a ”) la hora de $datetime2, independientemente de la fecha.

Tenga en cuenta que puede utilizar los siguientes operadores de comparación de igualdad para comparar tiempos:

  • lt: menos de
  • le: menor o igual a
  • gt: mayor que
  • ge: mayor o igual a
  • eq: igual
  • ne: no igual

El siguiente ejemplo muestra cómo comparar dos tiempos en PowerShell en la práctica.

Ejemplo: Cómo comparar dos veces en PowerShell

Supongamos que creamos las siguientes variables de fecha y hora en PowerShell:

  • $datetime1: La hora actual
  • $datetime2: La hora actual más dos horas

Podemos usar la siguiente sintaxis para verificar si la hora de $datetime1 es menor que (es decir, “anterior a”) la hora de $datetime2:

$datetime1 = Get-Date
$datetime2 = (Get-Date).AddHours(2)

$datetime1 -lt $datetime2

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

La declaración devuelve True, lo que indica que la hora de la variable $datetime1 es de hecho anterior a la hora de la variable $datetime2.

Podemos verificar que esto es correcto observando ambas fechas y horas:

  • $datetime1: jueves, 29 de febrero de 2024 9:00:10 a.m.
  • $datetime2: jueves, 29 de febrero de 2024 11:00:18 a.m.

La hora de la variable $datetime1 es de hecho anterior a la hora de la variable $datetime2.

Si queremos, podemos usar la siguiente sintaxis para calcular la diferencia exacta entre los dos tiempos:

$datetime2 - $datetime1

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

Podemos ver que la hora de $datetime2 está 2 horas, 0 minutos y 7 segundos por delante de la hora de $datetime1.

Si queremos, podemos usar la siguiente sintaxis para extraer solo la diferencia en horas:

($datetime2 - $datetime1).Hours

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

Esto nos dice que la hora de $datetime2 está 2 horas por delante de la hora de $datetime1.

Artículos relacionados