Linuxのdateコマンドの使用

Linuxのdateコマンドの使用

1. コマンドの紹介

date コマンドは、現在の時刻または指定された時刻を指定された形式で表示するために使用され、システム時刻を設定することもできます。多くのシェル スクリプトでは、時刻や日付をさまざまな形式で出力し、時刻と日付に基づいて操作を実行する必要があります。この場合、date コマンドを使用して完了できます。 Unix 系システムでは、日付は 1970 年 1 月 1 日 00:00:00 協定世界時 (UTC)、つまり Unix タイムスタンプから経過した秒数を表す整数として保存されます。

2. コマンド形式

日付 [オプション]... [+フォーマット]
日付 [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

このうち、FORMAT はフォーマット制御文字列であり、次の値を取ることができます。

%% キャラクター%
%a 曜日の略語(日~土)
%A 曜日のフルネーム(日曜日〜土曜日)
%b 月の略語(1月~12月)
%B 月のフルネーム(1月〜12月)
%c 日付と時刻 (2018 年 12 月 6 日木曜日 午前 9 時 43 分 53 秒 CST)。 date コマンドのみを入力すると、同じ結果が表示されます。
%C 世紀。 %Yに似ていますが、20などの最後の2桁は表示されません。
%d 月の日数 (01~31)
%D 日付、%m/%d/%y に相当、例: 12/06/18
%e 月の日付(1 から 31)。1 桁目はスペースで埋められ、%_d と同等です。
%F 日付。%Y-%m-%d に相当します (例: 2018-12-06)
%g 年の下2桁(yy)。例えば、2018は18を出力し、これは%yに相当します。
%G 年 (yyyy)
%h 月の略語(1月~12月)、%b に相当
%H 時間、24時間制(00〜23)
%I 時間、12時間形式 (01~12)
%j 年の通算日 (001~366)
%k 時間、24時間制(0〜23)。 1桁の数字はスペースを埋めます。%_Hと同じです。
%l 時間、12 時間形式 (1 ~ 12)。 1桁の数字はスペースを埋めます。%_Iと同じです。
%m 月 (01~12)
%M 分 (00~59)
%n 改行
%N ナノ秒 (000000000..999999999)
%p は AM または PM を表示します
%P は午前または午後を表示します
%r 時間を12時間形式で表示します (hh:mm:ss %p)
%R は時間と分を 24 時間形式で表示します。%H:%M と同じです。
%s 1970年1月1日00:00:00から現在までの秒数。 %S 秒数を表示します(00~59)
%t タブ文字 %T 時刻を 24 時間形式 (hh:mm:ss) で表示します。%H:%M:%S に相当します。
%u 曜日 (1..7)。 1 は月曜日を意味します %U 日曜日を週の最初の日とする年の週番号 (00..53)
%V 月曜日を週の初日とする年間の週番号 (01..53)
%w 曜日 (0-6)、0 は日曜日を表します %W 年の週、月曜日が週の最初の日です (00..53)
%x 日付 (mm/dd/yyyy)、例: 12/06/2018
%X 時間、%H:%M:%S に相当
%y 年の下2桁(2018年の場合は18)
%Y 年 (yyyy)
%z はタイムゾーンを +hhmm 形式で表示します (例: +0800)
%:z はタイムゾーンを +hh:mm 形式で表示します (例: +08:00)
%::z はタイムゾーンを +hh:mm:ss 形式で表示します (例: +08:00:00)
%Z の略語は、CST (中国標準時) などのタイムゾーン名を示します。
%h,%b 月の略語(1月~12月)
文字の埋め込みに関する注意: デフォルトでは、date コマンドは数値フィールドを 0 で埋めます。% の後には、次の埋め込み文字制御文字を使用できます。
- (ハイフン): パディングなし _ (アンダースコア): スペースでパディング 0 (ゼロ): 0でパディング ^ 可能な限り大文字で出力 # 可能な限り逆大文字で出力

3. コマンドオプション

-d, --date=STRING: 現在のタイムスタンプの代わりに、STRING で指定された時刻を表示します。
-f, --file=DATEFILE: DATEFILE ファイルの各行の時刻を表示します。
-I[TIMESPEC], --iso-8601[=TIMESPEC]: 指定された精度[TIMESPEC]でISO 8601標準形式で時間を表示します。 TIMESPEC のデフォルト値は「date」ですが、「hours」、「minutes」、「seconds」、または「ns」にすることもできます。
-r, --reference=FILE: ファイルの最終変更時刻を表示します -R, --rfc-2822: RFC-2822 で指定された形式で時刻を表示します。例: Wed, 05 Dec 2018 22:10:34 +0800
--rfc-3339=TIMESPEC: RFC 3339 で指定された形式で時間を表示します。精度は TIMESPEC で指定できます。TIMESPEC は、「date」、「seconds」、または「ns」の値を取ることができます。例: 2018-12-05 22:09:59.230994842+08:00
-s、--set=STRING: システム時間を STRING で指定された時間に設定します -u、--utc、--universal: 時間形式を協定世界時 (UTC) に表示または設定します --help: date コマンドのヘルプ情報を表示します --version: date コマンドのバージョン情報を表示します

4. 一般的な例

(1)Unixタイムスタンプを取得します。

日付 +%s
1544067345

(2)Unixタイムスタンプを読み取り可能な時刻に変換します。

日付 -d @1483525407
2017年1月4日水曜日 18:23:27 CST

日付 -d @1483525407 +"%F %T"
2017-01-04 18:23:27

注意: -d の後には有効な形式の日付が続く必要があるため、タイムスタンプは @ 文字で区別する必要があります。

(3)現在の時刻をフォーマットして出力します。

日付 +"%Y-%m-%d %H:%M:%S"
2018-12-06 10:57:33

# または日付 + "%F %T"

(4)時間の加算と減算の演算。

date +"%Y-%m-%d %H:%M:%S" //現在の時刻を表示しますdate -d "+1 日" +"%Y-%m-%d %H:%M:%S" //前の日付を表示しますdate -d "-1 日" +"%Y-%m-%d %H:%M:%S" //次の日付を表示しますdate -d "-1 か月" +"%Y-%m-%d %H:%M:%S" //前の月date -d "+1 か月" +"%Y-%m-%d %H:%M:%S" //次の月date -d "-1 年" +"%Y-%m-%d %H:%M:%S" //前の年date -d "+1 年" +"%Y-%m-%d %H:%M:%S" //次の年を表示します

(5)共通フォーマット変換

日付 -d "2009-12-12" +"%Y/%m/%d %H:%M:%S"
2009/12/12 00:00:00

(6)システム時刻を設定します。

日付 -s "2016-11-11 00:00:00"
2016 年 11 月 11 日金曜日 00:00:00 CST

日付
2016 年 11 月 11 日金曜日 00:00:05 CST

上記は Linux date コマンドの使用に関する詳細な内容です。Linux date コマンドの詳細については、123WORDPRESS.COM の他の関連記事をご覧ください。

以下もご興味があるかもしれません:
  • Linux gzipコマンドの使用
  • Linux userdel コマンドの使用法
  • Linuxコマンドをバックグラウンドで実行する方法
  • Linux statコマンドの使用
  • Linux lsコマンドの使用
  • Linux lnコマンドの使用
  • Linux の cut コマンドの説明
  • Linux bzip2 コマンドの使用

<<:  MySQL ダーティ ページ フラッシュとテーブル スペースの縮小の原理の分析

>>:  MySQLは適切なストレージエンジンを選択します

推薦する

ElementuiはデータをxlsxとExcelテーブルにエクスポートします

最近、Vue プロジェクトについて知り、ElementUI でデータを xlsx および Excel...

XHTML CSSを使用して正式なブログを書く

ブログの正式名称は「Web log」で、中国語で「ネットワークログ」を意味します。後にブログに短縮さ...

MySQL交換パーティションの詳細な例

MySQL交換パーティションの詳細な例序文exchange パーティションを紹介する前に、まず my...

HTMLの基本タグと構造の詳細な説明

1. HTMLの概要1.HTML: ハイパーテキスト マークアップ言語。これはプログラミング言語では...

HTML ウェブページのメタビューポート属性の説明

HTML メタビューポート属性の説明ビューポートとはモバイル ブラウザは、Web ページを仮想の「ウ...

jsはreduceメソッドを使用してコードをよりエレガントにします

序文実際のプロジェクトでは、最も一般的な処理は計算とループロジックである可能性があります。配列でre...

Vue-router プログラムナビゲーションの 2 つの実装コード

ページをナビゲートする2つの方法宣言型ナビゲーション: リンクをクリックしてナビゲーションを実現する...

elasticsearchを使用してインデックスデータを定期的に削除する

1. ESを使うこともあるリソースが限られている、またはビジネス上のニーズにより、最新の期間のデータ...

ウェブレッスンプラン、初心者向けレッスンプラン

指導トピックウェブページ適用グレード高校2年生授業時間1 クラス教科書分析焦点: 静的および動的ウェ...

ドラッグ位置プレビューを実装するネイティブJS

この記事では、要素をドラッグするときにプレビューを追加する小さなデモを紹介します。効果は次のとおりで...

MySQL バッチ SQL 挿入パフォーマンス最適化の詳細な説明

大量のデータを扱うシステムの中には、クエリ効率の低さやデータの保存時間の長さといったデータベースの問...

CSS--overflow:hidden のプロジェクト例

以下は、私のプロジェクトでこのプロパティを使用する方法の例です。 (1)激しく透明な浮遊コードをコピ...

iPhone デバイスの WAP ページでフォントサイズが大きい問題の解決策

JavaScriptコントロールを使用したくない場合は、次の方法を試してください。 Safariブラ...

Vuexはシンプルなショッピングカートを実装します

この記事では、参考までに、Vuex の具体的なコードを共有して、簡単なショッピングカートを実装します...

Dockerアーキテクチャ入門

Docker には 3 つの基本概念が含まれています。イメージ: Docker イメージはルート フ...