【Linuxコマンド】date 〜システムの日付を表示する〜

Linux
スポンサーリンク

概要

システムの日付を表示する。

システムの日付を設定することも可能だが、基本的にはNTPで時刻制御すると思うので覚えなくていいかと。

実用例

・日付でディレクトリが分かれているログを確認

$ cat /var/log/`date +%Y/%m%d`/mail.log

・日付でディレクトリが分かれているログの昨日分を確認

$ cat /var/log/`date -d "-1 day" +%Y/%m%d`/mail.log

・日付のサフィックスをつけてファイルをコピー

$ cp -pi test.txt test.txt.`date +%Y%m%d`

オプション詳細・解説

フォーマットを指定して表示

date +フォーマット

例)
date +"%Y/%m/%d %H:%M:%S"
 →2019/11/06 13:05:37

主なフォーマット例

フォーマット表示内容2019/11/06 13:05:37に実行した場合
%Y2019
%m11
%d06
%H13
%M05
%S37

フォーマットの詳細は「date –help」で表示できる

当日以外の日付の表示

-d または –date オプションを使用して指定

日付の指定方法

date -d “n day”n日後
date -d “n week”n週後
date -d “n month”n月後
date -d “n year”n年後

マイナスをつけると過去日付を指定できる

date -d “-n day”n日前
date -d “-n week”n週前
date -d “-n month”n月前
date -d “-n year”n年前

以下のような指定方法もあるが、上記の指定方法でどのパターンも対応可能。

  • yesterday(昨日)
  • tommorow(明日)
  • “3 days ago”(3日前)

おわりに

主にdateコマンドのフォーマットについての紹介でした。

私は、特にファイルのコピーバックアップ時にサフィックスをつけるときに使っています。また、作業手順書を作成する際に、作業日が確定していなくても実用例のようにdateコマンドを使用すれば対応できるのでおすすめです。

コメント

タイトルとURLをコピーしました