【コマンド】現在日時と書式設定
今日の日付と書式設定
今日の日付の取得と、書式設定の方法を紹介します。
# 今日の日付
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