ご存知のように、ほとんどの国では伝統的にキリスト教とつながっている「共通時代」という概念を使っています。たとえば、Unixエポック時間は1970年1月1日から計算されています。しかし、Unixエポック自体を基準にする場合は、次のようになります。ちなみに、この日付は1月1日、1日として表示されます。 2020年1月1日は51日1月1日と表示されます。
このカスタム参照フレームに従って現在の年を表示し、必要に応じて毎年自動的に変更するようにシステムを調整するにはどうすればよいですか。
答え1
カスタムを構築する必要があります。ロケール定義era
ロケール定義のLC_TIME部分にあるパラメータとカスタム名を除いて、基本的にこれまで一般的に使用されていたロケールの直接コピーです。年を表示するには、日付書式文字列を調整する必要があります。代替カレンダーとして。
以下は、ロケール定義の標準構文への単一のUnix仕様定義へのリンクです。https://pubs.opengroup.org/onlinepubs/007908799/xbd/locale.html
localedef
次に、コマンド(またはDebian / Ubuntuおよび関連ディストリビューションのラッパースクリプト)を使用してカスタムlocale-gen
ロケールのバイナリ表現を作成し、適切な場所にインストールします。その後、環境LC_TIME
変数を設定するだけです。時間値の表示に関連する問題でカスタムロケールを使用しようとするシステムに通知するには、この変数のシステム全体のデフォルト値は、デプロイメントに従ってまたはコマンドを使用/etc/default/locale
し/etc/sysconfig/i18n
て定義できます。localectl
(これはまた、各天皇の年度を計算する日本方式が処理される方式でもあります。と1/平成31年に伝統的なカレンダー。https://www.ewc.co.jp/Pages/Information/CalendarEN.aspx)
これにより、システムは「パブリック時代」カレンダーに時間を表示する機能を維持でき、これは電子メールヘッダーなどの項目にとって重要です。予期しない年番号を含むEメールを送信すると、送信Eメールに適したフィルタになります。メソッドは他のメールサーバーからスパムと見なされます。 。
答え2
あなたはできません。
Linuxカーネル内の時間測定には固定形式があります。
ただし、これには別の時間形式を使用できます。これは地域設定で定義されます。したがって、米国および国際規格はシステム内部で引き続き使用されますが、異なる形式で表示されます。
システム時刻を読み取って別の形式で表示するサードパーティのプログラムは次のとおりです。カダット。