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 formatoMM/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-Dateobtiene la fecha y hora actuales y las almacena en la variable$startDate. - El método
AddDays()del objetoDateTimepara agregar7días a la variable$startDatey almacenar el resultado. en la variable$endDate. - El cmdlet
Write-Outputmuestra la fecha y hora actuales almacenadas en la variable$startDatejunto con un mensaje"Fecha actual: ". - Otro cmdlet
Write-Outputmuestra 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:19El 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-TimeSpancrea un nuevo objetoTimeSpancon una duración especificada. En este caso, el parámetro-Daysse utiliza para especificar una duración de7días. Esto significa que la variable$timeSpancontendrá un objetoTimeSpanque representa una duración de7días. - Luego, agregamos la duración
$timeSpana la fecha$startDateusando el operador+y asignamos el resultado a$endDate.variable. Esto crea un nuevo objetoDateTimeque representa la fecha y hora7dí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:10El fragmento de código anterior funcionó de la siguiente manera:
- La función
DateAdd()llamadaDateAddtoma dos parámetros: un objeto[datetime]llamado$datey 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$datey devuelve la nueva fecha resultante como < código>[fechahora] objeto. Get-Daterecupera la fecha y hora actuales y las almacena en la variable$date.- El comando
$newDate=DateAdd -date $date -days 7llama a la funciónDateAddcon$datey7argumentos 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.
