Excel VBAや、Word VBAでも、「Date」関数は便利なのでよく使います。
VBAにおいては、多くの場合、Format関数と組み合わせて、好みの表示形式にして使います。
Linuxのdateコマンドでも、同じように、表示形式を自由に変えられるはずだ・・・・、と思いながらも、その方法を調べることなく、これまでずっと放置してきました。
んで、連休の今日(2024年5月3日)、時間があったのでようやく調べてみました。
dateコマンドを使い、指定した表示形式で日時を取得するには、
date [+format] と、dateの後に+でフォーマットを指定します。
主なフォーマットは、次のとおりです。
%Y 西暦4桁
%y 西暦下2桁
%m 月(01~12)
%-m 月(1~12)
%d 日(01~31)
%-d 日(1~31)
%A 曜日(日曜日~土曜日)
%a 曜日の省略形
%y 西暦下2桁
%m 月(01~12)
%-m 月(1~12)
%d 日(01~31)
%-d 日(1~31)
%A 曜日(日曜日~土曜日)
%a 曜日の省略形
いくつかの例を掲げます。
例示【1】
$ date
2024年 5月 3日 金曜日 20:35:22 JST
例示【2】
$ date +"%Y年%-m月%-d日(%A)"
2024年5月3日(金曜日)
例示【3】
$ date +"%Y年%m月%d日(%a)"
2024年05月03日(金)
上記の例示においては、フォーマット部分をダブルクォーテーション(")で囲っていますが、これがなくても同じ結果になります。ただ、フォーマットの中に特殊文字がある場合に、特殊文字の働きを無効化して、文字列として表示させるためには、ダブルクォーテーションが必要となります。特殊文字は、; & ( ) | ^ < > ? * [ ] $ ' " ` { } 改行 タブ スペースなどです。
クォーテーションは、特殊文字に特別な働きをさせることなく、特殊文字を通常の文字として扱います。
このクォーテーションの働きについては、
⇒ こちらの記事をご覧ください。
ファイル名の中に今日の日付を組み込んだ上で、ファイルを保存するときなどに、日付を好みの形式で取得できるのは便利です。指定形式で日付を取得して、ファイル名の一部にできます。
「240503_BackUP.txt」 などといったファイル名です。
それでは、また次の記事で
■■■■ goosyun ■■■■