PowerShellの現在日時の取得と日時の計算のサンプルです。
目次
サンプル | 現在日時の取得(Get-Date/[datetime]::Now) |
日時の計算 |
現在日時の取得(Get-Date/[datetime]::Now)
現在日時は、Get-Dateまたは[datetime]::Nowで取得できます。
Write-Host(Get-Date) # 2022/05/22 12:46:21
Write-Host(Get-Date -Format "yyyy-MM-dd") # 2022-05-22
Write-Host([datetime]::Now) # 2022/05/22 12:46:21
Write-Host([datetime]::Now.ToString("yyyy-MM-dd")) # 2022-05-22
Get-Dateの場合は、-Formatでフォーマット指定ができます。
[datetime]::Nowの場合は、ToStringで指定します。
日時の計算
日時の文字列から日時を計算するサンプルです。
$str1 = Get-Date '2022/05/22'
# 3年前/後を求める
Write-Host($str1.AddYears(3)) # 2025/05/22 0:00:00
Write-Host($str1.AddYears(-3)) # 2019/05/22 0:00:00
# 3ヶ月前/後を求める
Write-Host($str1.AddMonths(3)) # 2022/08/22 0:00:00
Write-Host($str1.AddMonths(-3)) # 2022/02/22 0:00:00
# 3日前/後を求める
Write-Host($str1.AddDays(3)) # 2022/05/25 0:00:00
Write-Host($str1.AddDays(-3)) # 2022/05/19 0:00:00
$str2 = Get-Date '2022/05/22 11:10:20'
# 3時間前/後を求める
Write-Host($str2.AddHours(3)) # 2022/05/22 14:10:20
Write-Host($str2.AddHours(-3)) # 2022/05/22 8:10:20
# 3分間前/後を求める
Write-Host($str2.AddMinutes(3)) # 2022/05/22 11:13:20
Write-Host($str2.AddMinutes(-3)) # 2022/05/22 11:07:20
# 3秒前/後を求める
Write-Host($str2.AddSeconds(3)) # 2022/05/22 11:10:23
Write-Host($str2.AddSeconds(-3)) # 2022/05/22 11:10:17
日時を引くときは引数にマイナスの値を指定します。
関連の記事