【コマンド】現在日時と書式設定

PowerShell

今日の日付と書式設定

今日の日付の取得と、書式設定の方法を紹介します。

# 今日の日付
echo %date%             # 2022/09/12

# 今年の年だけを取得する
echo %date:~0,4%        # 2022

# 今月の月だけを取得する
echo %date:~5,2%        # 09

# 今日の日付だけを取得する
echo %date:~8,2%        # 12

# YYYYMMDD
echo %date:~0,4%%date:~5,2%%date:~8,2%        # 20220912

# YYYY-MM-DD(下の2つは同じ結果)
echo %date::=-%                               # 2022-09-12
echo %date:~0,4%-%date:~5,2%-%date:~8,2%      # 2022-09-12

# YYYY年MM月DD日
echo %date:~0,4%年%date:~5,2%月%date:~8,2%日   # 2022年09月12日

# MMDD
echo %date:~5,2%%date:~8,2%      # 0912

# MM/DD
echo %date:~5,5%                 # 09/12

# MM月DD日
echo %date:~5,2%月%date:~8,2%日  # 09月12日

 

 

※補足ですが上の表記では「~」は真ん中ほどの高さに表示されていますが、コマンドで入力すると「~」は上の方に表示されます。両者は同じものなのでご安心ください。

 

 

 

現在日時と書式設定

現在日時の取得と、書式設定の方法を紹介します。

時間は前0埋めされないため、0埋めを行いたい場合、下の例のように変数にいれて調整する必要があります。尚、分に関しては前0埋めする必要はありません。

# 現在時刻
echo %time%                       # 00:12:34.56

# 現在時刻
echo %time:~0,5%                  # 0:12

# 現在時刻 ※時分表記
echo %time:~0,2%時%time:~3,2%分   # 0時12分

# 現在時刻 ※時間を前0埋めする
set temptime=%time: =0%           # 前0埋めをするために変数に格納
echo %temptime:~0,5%              # 00:12

# 現在時刻 ※時間を前0埋めする+時分表記
set temptime=%time: =0%                             # 前0埋めをするために変数に格納
echo %temptime:~0,2%時%time:~3,2%分%time:~6,2%秒     # 00時12分

# 現在時刻(秒まで)
echo %time:~0,8%                  # 00:12:34

# 現在時刻(秒まで)+前0埋め
set temptime=%time: =0%           # 前0埋めをするために変数に格納
echo %temptime:~0,8%              # 00:12:34

# 現在時刻の時間だけを取得する
echo %time:~0,2%                  #  0 (0時の時の表記)

# 現在時刻の時間だけを取得する+前0埋め
set temptime=%time: =0%           # 前0埋めをするために変数に格納
echo %temptime:~0,2%              # 00

# 現在時刻の分だけを取得する
echo %time:~3,2%                  # 12

# 現在時刻の秒だけを取得する
echo %time:~6,2%                  # 34

 

 

 

年月日+時分で表記

上の日付と時刻を合わせ、よく使う表記の例です。

# yyyy/mm/dd hh:mm:ss
set temptime=%time: =0%           # 時間を前0埋め
echo %date% %temptime:~0,8%
# 結果 : 2022/09/12 00:12:34


# yyyy/mm/dd hh:mm:ss
set temptime=%time: =0%
echo %date::=-% %temptime:~0,8%
# 結果 : 2022-09-12 00:12:34


# yyyy年mm月dd日 hh時mm分ss秒
echo %date:~0,4%年%date:~5,2%月%date:~8,2%日 %temptime:~0,2%時%time:~3,2%分%time:~6,2%秒
# 結果 : 2022年09月12日 00時12分34秒


# yyyymmddhhmmss
set temptime=%time: =0%
echo %date:~0,4%%date:~5,2%%date:~8,2%%temptime:~0,2%%time:~3,2%%time:~6,2%
# 結果 : 20220912001234