シェル 日付をどうにかする

dateコマンドとやらがなかなか使えました。

現在時刻取得

# date
Tue Mar  7 01:58:16 UTC 2017

数時間後とかを取得 –date

数字と、 「年: years 月: months 日: days 時: hours 分: minutes 秒: seconds」とを合わせると色々指定可能。 さらに、「ago」をつけると前に戻れる。

# date --date "2017/3/7 00:00 1 hours"
Tue Mar  7 01:00:00 UTC 2017

フォーマットを変える +[フォーマット指定] -d[時刻]

フォーマットの指定の仕方は http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230739/?rt=nocnt

# date +%d/%b/%Y:%H -d "2017/3/7 00:00"
07/Mar/2017:00

3/21追記 osによる一部表記の違いを確認しました。

Red Hat Enterprise Linux Server release 6.2 (Santiago)
%b , %Bともに英語の省略表記にはならず日本語表記

他にも同様の表記の違いがあるかと思われます。