bash
値を持つ変数が与えられたら、2019-08-15
その日付を形式に変換するユーティリティがありますかAugust 15, 2019
?
ベストアンサー1
LinuxまたはGNUを使用するすべてのシステムdate
:
$ thedate=2019-08-15
$ date -d "$thedate" +'%B %e, %Y'
August 15, 2019
macOS、OpenBSD、FreeBSDではdate
デフォルトでGNUを使用できません。
$ thedate=2019-08-15
$ date -j -f '%Y-%m-%d' "$thedate" +'%B %e, %Y'
August 15, 2019
この-j
オプションは、システム時計の設定を無効にし、-f
入力日の書式を記述する書式文字列を使用します。strptime(3)
書式文字列は、変数値に使用される書式を記述します。次に、変数の値と出力する形式(次のようにする必要があります)strftime(3)
フォーマット文字列)。
-f input_fmt
NetBSDユーザーは上記のようなものを使用できますが、実装では以下を使用するため、date
オプションはありません。parsedate(3)
。また、-d
入力日付文字列を指定するオプションに注意してください。
$ thedate=2019-08-15
$ date -j -d "$thedate" +'%B %e, %Y'
August 15, 2019
date
また、システムのマニュアルを参照してください。