dateコマンドでN日前、N日後をやりたかったのでメモ。
検証環境
[hoge@localhost ~]$ cat /etc/*release | grep -i centos CentOS Linux release 7.9.2009 (Core) [hoge@localhost ~]$ date --version date (GNU coreutils) 8.22 Copyright (C) 2013 Free Software Foundation, Inc. ライセンス GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. 作者 David MacKenzie。
やり方
本日より2日前
date --date "2 days ago" +%Y%m%d [hoge@localhost ~]$ date 2022年 11月 12日 土曜日 19:15:16 JST [hoge@localhost ~]$ date --date "2 days ago" +%Y%m%d 20221110
本日より2日後
date --date "2 days" +%Y%m%d [hoge@localhost ~]$ date 2022年 11月 12日 土曜日 19:15:16 JST [hoge@localhost ~]$ date --date "2 days" +%Y%m%d 20221114
1日前、1日後は
"day"でも"days"でも行けた
[hoge@localhost ~]$ date --date "1 days" +%Y%m%d 20221113 [hoge@localhost ~]$ date --date "1 day" +%Y%m%d 20221113 [hoge@localhost ~]$ date --date "1 days ago" +%Y%m%d 20221111 [hoge@localhost ~]$ date --date "1 day ago" +%Y%m%d 20221111