HIRO's.NET

VB.NET, C#, PowerShell Tipsサイト

 VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。

 基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。

HIRO's.NET RSSHIRO's.NET RSS


PowerShellの開発でお困りのことはありませんか?
そんな悩みは当サイトで解決!!

HOME > PowerShell Tips > 自作関数 Tips メニュー

14.指定した年月の最終日を取得する

 
UPDATE:2008/05/03    
 



指定した年月の最終日を取得する関数を作成してみました。

Get-LastDay.ps1

#===============================================================================
# Get-LastDay: 指定した年月の最終日を取得する
#
# パラメータ:
# $Year: 年(省略した場合は現在の年)
# $Month: 月(省略した場合は現在の月)
#
# 使用例1(年月指定)
# PS > Get-LastDay 2008 2
#
# 使用例2(年月省略)
# PS > Get-LastDay
#
# copyright HIRO's.NET(http://hiros-dot.net/)
#===============================================================================
function global:Get-LastDay
{
Param ([int]$Year = $(Get-Date).Year, [int]$Month = $(Get-Date).Month)
return [System.DateTime]::DaysInMonth($Year, $Month)
}

関数の使用方法ですが、Get-LastDay[Enter] と入力すると当月の最終日を返します。
2008/05/03にこの関数を実行すると、"31"を返します。

List1

PS > Get-LastDay
31

下記のように、Get-LastDay 年 月[Enter] とした場合は指定した年月の最終日を返します。

List2

PS > Get-LastDay 2008 6
30

ポイントですが、この関数はDateTime構造体のDaysInMonthメソッドを利用して最終日を取得しています。