将日期 -1day 与 wget 一起使用

将日期 -1day 与 wget 一起使用

我想使用 wget 和 cron 作业每天提取一个文件,但是我希望它从远程服务器提取前一天的文件,并且该文件由 URL 中的日期变量控制,如下所示:

http://example.com/export/file.csv?DateRange=20150429,20150429

我可以使用以下命令获取当前日期:

/usr/bin/wget --output-document=/file.csv "http://example.com/export/file.csv?DateRange=`date +%Y%m%d`,`date +%Y%m%d`"

不过,这个文件并不好;我想提取昨天的日期而不是今天的日期。

有什么办法可以减去1天吗?

答案1

如果你有 GNU 日期,你可以这样做:

date -d yesterday +%Y%m%d

例如:

$ date -d yesterday +%Y%m%d
20150430
$ date +%Y%m%d      
20150501

命令是:

/usr/bin/wget --output-document=/file.csv "http://domain.com/export/file.csv?DateRange=`date -d yesterday +%Y%m%d`,`date +%Y%m%d`"

查看GNU 文档了解更多示例。您还可以执行: date --date='1 day ago'date --date='-1 day'

相关内容