PowerShellで日付を扱う機会はいろいろありますが、ファイル名に実行日時を付与する目的などでよく使います。
今回は日時を取得する方法について記載しています。
現在の日時を取得する。
get-date
実行結果
2017年1月1日 0:00:00
指定の形式で日付だけ取得する。(yyyy/mm/dd)
get-date -format "yyyy/MM/dd"
実行結果
2017/01/01
指定の形式で日付だけ取得する。(yyyy-mm-dd)
get-date -format "yyyy-MM-dd"
実行結果
2017-01-01
上記のようにFormatオプションをつければ自由な形式で出力できます。
ファイル名に使用するなら日付と時間を数値のみで出力した方がよいでしょう。
$logfile = get-date -format "yyyyMMddHHmm"
$logfile += ".log"
echo $logfile
実行結果 例:2017年12月01日 18:30にコマンドラインを実行。
201712011830.log
日付のフォーマット形式で注意が必要なのは「月」
形式が[ mm ]だと「分(Minutes)」を表すことになります。
「月(Monthly)」を表示したい場合は[ MM ]とします。
yyyyMMdd
時間のフォーマット形式で注意が必要なのは「時」
形式が[ hh ]だと「12時間表記」を表すことになります。
「24時間表記」で表示したい場合は[ HH ]とします。
HHmm