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 $datetime2La 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 - $datetime1La 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).HoursLa 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.


