linux dateコマンド

2023 ワード

date-d:現在の文字列で指定されている時間と日付を表示します
[root@Host0 ~]# date -d 20160101
Fri Jan  1 00:00:00 CST 2016

date+%s:1970年1月1日00:00:00 UTCから現在までの秒数
次の例は、1970年1月1日00:00:00:00 UTCから現在の20160101(Fri Jan 1 00:00:00 CST 2016)までの秒数です.
[root@Host0 ~]# second=`date -d 20160101 +%s`
[root@Host0 ~]# printf $second
1451577600

変数second+1 day:
この書き方では計算結果が得られません.
[root@Host0 ~]# second=$second+86400
[root@Host0 ~]# printf $second
1451577600+86400

このように書くと計算結果が得られます.
[root@Host0 ~]# second=`date -d 20160101 +%s`
[root@Host0 ~]# second=$(($second+86400))
[root@Host0 ~]# printf $second
1451664000

$secondに対応する日付を入力します($secondの前に@を追加することを覚えています):
[root@Host0 ~]# date -d @"$second" +%Y%m%d
20160102

上記で日付+1 dayを実現しました.
転載先:https://www.cnblogs.com/Skyar/p/5916687.html