Búsqueda de sitios web

PowerShell agrega días hasta la fecha [3 formas]


Antes de comenzar, es fundamental saber cómo se almacenan las fechas en PowerShell. Las fechas se almacenan como DateTime, que contiene tanto una fecha como una hora. Las fechas están en el formato MM/DD/AAAA. Sigamos aprendiendo diferentes formas de agregar días hasta la fecha en PowerShell.

Usando el método AddDays()

Utilice el método AddDays() para agregar días hasta la fecha.

Utilice el método AddDays():

$startDate = Get-Date
$endDate = $startDate.AddDays(7)
Write-Output "Current Date: $startDate"
Write-Output "New Date: $endDate"

Producción :

Current Date: 04/30/2023 14:54:03
New Date: 05/07/2023 14:54:03

El fragmento de código anterior funciona de la siguiente manera:

  • El cmdlet Get-Date obtiene la fecha y hora actuales y las almacena en la variable $startDate.
  • El método AddDays() del objeto DateTime para agregar 7 días a la variable $startDate y almacenar el resultado. en la variable $endDate.
  • El cmdlet Write-Output muestra la fecha y hora actuales almacenadas en la variable $startDate junto con un mensaje "Fecha actual: ".
  • Otro cmdlet Write-Output muestra la nueva fecha y hora almacenadas en la variable $endDate.

Usando el cmdlet New-TimeSpan

Utilice el cmdlet New-TimeSpan para agregar días hasta la fecha.

Utilice el cmdlet New-TimeSpan:

$startDate = Get-Date
$timeSpan = New-TimeSpan -Days 7
$endDate = $startDate + $timeSpan
Write-Output "Current Date: $startDate"
Write-Output "New Date: $endDate"

Producción :

Current Date: 04/30/2023 14:57:19
New Date: 05/07/2023 14:57:19

El código delimitador anterior es similar al código anterior, pero utiliza el cmdlet New-TimeSpan para agregar días hasta la fecha.

  • El cmdlet New-TimeSpan crea un nuevo objeto TimeSpan con una duración especificada. En este caso, el parámetro -Days se utiliza para especificar una duración de 7 días. Esto significa que la variable $timeSpan contendrá un objeto TimeSpan que representa una duración de 7 días.
  • Luego, agregamos la duración $timeSpan a la fecha $startDate usando el operador + y asignamos el resultado a $endDate. variable. Esto crea un nuevo objeto DateTime que representa la fecha y hora 7 días posteriores a la fecha $startDate.
  • Finalmente, la salida se muestra mediante el cmdlet Write-Output.

Usando un método personalizado

Podemos escribir nuestra propia función personalizada para agregar días hasta la fecha en PowerShell. Este método utilizará el método AddDays() para agregar días hasta la fecha.

Utilice el método DateAdd():

function DateAdd([datetime]$date, [int]$days){
    return $date.AddDays($days)
}
$date = Get-Date
$newDate = DateAdd -date $date -days 7
Write-Output "Current Date: $date"
Write-Output "New Date: $newdate"

Producción :

Current Date: 04/30/2023 15:10:10
New Date: 05/07/2023 15:10:10

El fragmento de código anterior funcionó de la siguiente manera:

  • La función DateAdd() llamada DateAdd toma dos parámetros: un objeto [datetime] llamado $date y un < código>[int] llamado $days. La función agregará los días especificados a la fecha mencionada y devolverá la nueva fecha como un objeto [datetime].
  • El método AddDays() agrega el número de días especificado ($days) al objeto $date y devuelve la nueva fecha resultante como < código>[fechahora] objeto.
  • Get-Date recupera la fecha y hora actuales y las almacena en la variable $date.
  • El comando $newDate=DateAdd -date $date -days 7 llama a la función DateAdd con $date y 7 argumentos y almacena la nueva fecha resultante en la variable $newDate.
  • Finalmente, la salida resultante se muestra usando el cmdlet Write-Output.

A la luz de las soluciones mencionadas anteriormente, PowerShell ofrece varias formas de agregar días a una fecha, lo que la convierte en una característica poderosa. Estos métodos incluyen el uso del método AddDays(), la definición de una función DateAdd() y el uso del objeto TimeSpan. Al aprovechar estos métodos, manipular fechas en scripts de PowerShell se convierte en una tarea sencilla, lo que permite la automatización de una amplia gama de funciones.

Se trata de que PowerShell agregue días hasta la fecha.

Artículos relacionados