#navi(../)
* PowerShellで文字列の日時をDateTimeオブジェクトにする方法・Get-Date [#qaae0869]
PowerShellのGet-Dateコマンドレットを使用することにより、指定した文字列日時を引数としてDateTimeオブジェクトを作成することができます。~
以下に実際の実行例を記します。
#contents
#htmlinsertpcsp(win-top.html,win-sp.html)
* 関連記事 [#w425e708]
-[[Get-Dateコマンドレットで前日、翌日、前月、翌月などの日付を取得する方法>PowerShell/Get-Dateで前日、翌日、前月、翌月などの日付を取得する方法]]
-[[本日が月末かどうかを判定するスクリプト>PowerShell/本日が月末かどうかを判定するスクリプト]]
* Get-Dateコマンドレットを使用してDateTimeを変数に代入 [#d281431c]
以下にようにGet-Dateに日付文字列を渡すとDateTimeオブジェクトを作成することができます。
PS D:\> $feb = Get-Date 2016-2-1
PS D:\> $feb.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True DateTime System.ValueType
PS D:\> $feb
2016年2月1日 0:00:00
上記の実行例では、時間を指定していないので0:0:0となります。
** 時間を指定してみる [#h8d99c66]
以下のように時間も指定することができます。~
日付と時間の間に半角スペースがあるので、ダブルクォーテーションで囲んであります。
PS D:\> $feb = Get-Date "2016-2-29 12:34:56"
PS D:\> $feb
2016年2月29日 12:34:56
** 年月日の区切りをスラッシュにする [#e62eb052]
年月日の区切りにスラッシュを使用することもできます。~
PS D:\> $mar = Get-Date "2016/3/1 1:02:03"
PS D:\> $mar
2016年3月1日 1:02:03
** ミリ秒を指定してみる [#j968222b]
ミリ秒を指定する場合は以下のように記述します。
PS D:\> $mar = Get-Date "2016/3/1 1:02:03.999"
PS D:\> $mar
2016年3月1日 1:02:03
PS D:\> $mar | Format-List
DisplayHint : DateTime
Date : 2016/03/01 0:00:00
Day : 1
DayOfWeek : Tuesday
DayOfYear : 61
Hour : 1
Kind : Unspecified
Millisecond : 999
Minute : 2
Month : 3
Second : 3
Ticks : 635923909239990000
TimeOfDay : 01:02:03.9990000
Year : 2016
DateTime : 2016年3月1日 1:02:03
以上、PowerShellで日時文字列をDateTmeに変換する方法でした。
#htmlinsertpcsp(win-btm.html,win-sp.html)